多模块maven项目—前端录入显示信息
一.要求
1.创建一个名为servlet_Exam的多模块maven项目, 其中有三个子模块分别为
1) 基础模块servlet_pojo
2) 基础模块servlet_dao
3) web模块servlet_web
2.设置其依赖关系:
servlet_web 依赖 servlet_dao
servlet_dao 依赖 servlet_pojo
3.子模块功能实现说明
1) 基础模块servlet_pojo
在该模块内定义一个bean,名称为User;
其相应的属性: id(整型) name(字符串) age(整型) gender(字符) birthday(日期) hobbies(字符串数组)
2) 基础模块servlet_dao
说明: 1. 数据库使用mysql数据库
2.创建一张User表, 表中的字段分别为:
1.id 序号
2.name 姓名
3.age 年龄
4.gender 性别
5.birthday 生日
6.hobbies 兴趣爱好
7.createtime 创建时间(日期类型)
8.updatetime 修改时间(日期类型)
该模块主要用于定义数据库相关操作类与方法
该模块分别创建两个类: a. DBUtil b. UserDao
a. DBUtil
在该类中封装jdbc连接mysql数据库方法(1. 数据库驱动获取方法 2.数据库关闭方法)
b. UserDao
在该类中封装:
1) 一个插入User对象到数据表的方法
实现要求:
1.createtime与updatetime两个字段值为当前时间,使用字符串固定值
2.插入的数据字符串类型使用中文
3.id为自动生成(对顺序无要求)
2) 一个通过id来得到相应User对象的方法
3) web模块servlet_web
该模块用于前台展示信息
1.在index.jsp页面中定义一个form表单,该表单需要向后台传递
用户信息
要求: 1)使用post方式
2)action: “insert.do”
2.创建一个InsertServlet类,继承HttpServlet类
在该类相关方法中实现从前台获取数据,传递给Dao层进行插入
备注: a. 请求路径: http://localhost:8088/insert.do
b. 需要处理中文问题
c. 插入成功,向前台返回"数据已成功录入!"
3.创建一个home.jsp页面
该页面定义一个form表单,用于输入用户id查询相应用户信息
要求: 1)使用get方式
2)action: “update.do”
4.创建一个UpdateServlet类,继承HttpServlet类
该类用于返回用户信息
要求: 1) 如果查询到了用户,就将信息返回至前台
2) 如果查询不到用户,就向前台返回"该用户不存在"
4.git提交
1) 在码云创建名为"Servlet_Exam"的仓库,仓库设置为公开仓库而非私有;
2) 并使用remote方式将本地仓库与远程仓库进行连接;
3) 在本地创建.gitignore文件并对其进行配置;
.gitignore配置要求:
只允许上传 “.java” “.xml” “.jsp” “.html”
4) 将本地项目上传至远程仓库
二.创建项目
首先创建servlet_Exam的maven项目(我的项目名字是Exam)
接着创建子模块项目
servlet_pojo 和 servlet_dao 模块和创建servlet_Exam一样
servlet_web创建时有所区别
创建完成后的项目
注意: 要把主项目也就是Exam项目里的src文件删除
三.设置其依赖关系
包括所需的jar包地址
包含的jar包有
Exam的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.huawei</groupId>
<artifactId>Exam</artifactId>
<version>1.0-SNAPSHOT</version>
<modules>
<module>servlet_pojo</module>
<module>servlet_dao</module>
<module>servlet_web</module>
</modules>
<!-- 所有的父级项目都是pom的打包方式 -->
<packaging>pom</packaging>
<name>Exam</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!--jar包地址-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!--要和自己的mysql数据库版本一致-->
<version>8.0.26</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
servlet_pojo的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>Exam</artifactId>
<groupId>com.huawei</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>servlet_pojo</artifactId>
<name>servlet_pojo</name>
</project>
servlet_dao的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.huawei</groupId>
<artifactId>servlet_dao</artifactId>
<version>1.0-SNAPSHOT</version>
<name>servlet_dao</name>
<dependencies>
<dependency>