一、准备(先看下两个文章)
- 先看如下两个文章:
- 需要准备的jar包:
- mysql-connector-java-8.0.29.jar(前面2个文章介绍了)
- servlet-api.jar(下面介绍)
- 环境:
- jdk
- idea
- tomcat
- navicat(mysql)
二、开始
- 创建一个javaweb项目 第一个javaweb
- 在该目录下新建两个文件夹
(classes目录用于存放编译后的class文件,lib用于存放依赖的jar包)
3.配置输出class文件的路径
File --> Project Structure,进入 Project Structure窗口,点击 Modules --> 选中项目“JavaWeb” --> 切换到 Paths 选项卡 --> 勾选 “Use module compile output path”,将 “Output path” 和 “Test output path” 都改为之前创建的 classes 目录。
4. 给lib文件添加依赖,可以放一些jar包。
JARs or Directories选择刚才新建的lib文件(可以把lib下的jar包导入项目)
5. 往web/WEB-INF/lib拷贝jar包
1. servlet-api.jar
打开tomcat的安装目录下lib下有servlet-api.jar包
2. mysql-connector-java (前面文章有介绍)
6.配置页面与servlet的关系web/WEB-INF/web.xml(图中没用到的文件夹先不用看)
三、开发
1.代码分层
1. 代码分层(文件夹介绍)
一般如果代码不分层的话全都写在一块话,不方便维护,而且后续开发人员接手容易看不懂,并且共用的代码和逻辑需要抽取出来,以下是dao模式的一个规范<br/>
(1)com.ytc.dao
这个包下面的文件夹是一些持久化的类,就是查询数据库的操作,写sql拿到数据库的数据
外面业务数据通过传参拼sql然后返回出去数据,这个模块不设计业务操作,根据传参存取数据
(2)com.ytc.service
这个模块写一些业务操作,比如前端注册功能传参数,然后servlet获取到参数调用service里注册方法,service处理一下数据格式或者其他一些业务,然后调用dao模块存到数据库
(3)com.ytc.servlet
这个模块是前端调用一个接口,这servlet用来获取参数和处理参数的,然后调service
(4)com.ytc.util
这个模块是抽取的一些工具类,比如连数据库的JDBC等等
(5)com.ytc.vo
这个模块是存实体类,比如用户登录,存用户的实体类,比如dao模式查所有用户,查出来的用户应该 new User(,,,,)等存到实体类,然后返回user对象比较方便
2.用户登录
执行流程:servlet接收参数->service处理业务->调用dao传给数据库(可能会用到vo实体和Util工具类)
1.index.html
2.LoginServlet.java(右键新建servlet新建出来的)
3.UserService.java
4.UserDao.java
5.User.java
6. JDBCUtil.java(读取文件)
7. 配置文件 db.properties
注意:如果UserDao里面的getConntion走了catch的话,没有建立连接需要db.properties改动一下再保存就可以,可能没反应过来