2024年java编程基础网页

java编程基础网页目录 1 页面展示 2 静态页面设计 3 使用 Thymeleaf 改造 HTML 4 准备工作 5 功能设计 5 1 数据库设计 5 2 数据库表对应的实体类 5 3 监听器 5 4 数据库工具类 5 5 创建 MessageServl 类 5 6 数据库逻辑处理 6 项目源码 1 页面展示 输入谁想对谁说的话 点击提交 内容就会显示在下方 如下所示 2 静态页面设计

大家好,我是讯享网,很高兴认识大家。



目录

1. 页面展示

2. 静态页面设计

3. 使用Thymeleaf改造HTML

4. 准备工作

5. 功能设计

5.1 数据库设计

5.2 数据库表对应的实体类

5.3 监听器

5.4 数据库工具类

5.5 创建MessageServlet类

5.6 数据库逻辑处理

6. 项目源码


1. 页面展示

用JAVA创建一个网页 怎么用java制作网页_开发语言

输入谁想对谁说的话,点击提交,内容就会显示在下方,如下所示:

用JAVA创建一个网页 怎么用java制作网页_web_02

2. 静态页面设计

HTML代码

CSS样式代码

讯享网

JS代码

 

缺陷及改进

上述只是静态页面,也就是无论何时访问,页面都不会改变,并且上次提交的表白信息在下次访问时就会消失,所以我们需要制作成服务器版表白墙,也就是每次访问的时候所有的表白消息都可以展示出来,即访问时从数据库查询消息展示在前端,输入消息点击提交保存在数据库以后并展示在前端

3. 使用Thymeleaf改造HTML

我们采用form表单的提交方式,请求方法为post请求,展示的表白消息使用Thymeleaf对其改造,改造后的代码如下:

讯享网

4. 准备工作

创建Maven项目后,在pom.xml中添加依赖

  • 后端使用Servlet进行开发
  • 使用模板引擎
  • 数据库使用Mysql
  • 引入单元测试框架,做某个功能的测试
 

java编程基础网页

创建相关的包

用JAVA创建一个网页 怎么用java制作网页_开发语言_03

引入前端资源

用JAVA创建一个网页 怎么用java制作网页_java_04

5. 功能设计

5.1 数据库设计

分析:页面上将展示多条消息,每条消息都要从数据库中查询,并且输入消息点击提交后,会将消息保存在数据库,消息总共有三个字段,分别是谁,对谁,说什么,所以我们要创建一个message表,存放消息

 

5.2 数据库表对应的实体类

 

5.3 监听器

 

说明:TemplateEngine和ServletContextTemplateResolver的创建和初始化只执行一次,所以采用监听器的设计模式监听ServletContext的创建,ServletContext在Tomcat启动时自动创建,在Tomcat关闭时自动消失,所以在ServletContext创建的时候自动执行引擎和解析器的逻辑代码,将引擎写到ServletContext中,后续的Servlet直接从ServletContext中获取引擎即可

5.4 数据库工具类

提供获取数据库连接,统一释放资源

 

5.5 创建MessageServlet类

创建MessageServlet类,注解为@WebServlet("/message"),继承HttpServlet,重写doPost方法

  1. 解析请求,设置请求编码格式,获取到三个输入框内容,from,to,content
  2. 创建一个Messge实体类重写toString方法,提供Setter和Getter方法
  3. 将from,to,content设置到一个Message对象中,然后将这个对象插入到数据库中
  4. 插入到数据库中后,还要在前端展示出来,即每次访问message路径的时候都要在数据库中查询所有的消息,并展示在前端,故要重写doGet方法,在doGet方法中做对应的逻辑处理
  5. 在doGet方法中,设置响应编码格式,从ServletContext中获取引擎,创建web上下文,设置动态参数键为messages,值为从数据库中查询到所有消息的集合,整合模板和数据,将整合后的字符串写给前端,由浏览器渲染
  6. 在doPost方法中调用doGet方法是为了每次提交完后都要将消息展示在前端,因为和前面是相同的逻辑,所以直接调用doGet方法
 

上述涉及到往数据库插入消息和从数据库查询消息的逻辑,这两个逻辑将在MessageDao中展示

5.6 数据库逻辑处理

 

6. 项目源码

小讯
上一篇 2024-12-29 16:36
下一篇 2025-01-01 12:22

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/1881.html