MVC模式

jsp 组成: html java 代码 指令
早期的 Javaweb 项目,将全部的内容编写在 jsp 页面中,不仅编写 html 页面样式,同时还写 Java 代码;导
致页面内容非常繁杂,一旦发生错误,出现 bug ,调试成本非常高;
MVC 设计模式,针对项目架构进行设计,将整个项目的代码分成几个包,每个包里用来编写哪种内容;
M Model 层,模型层,保存数据的层 JavaBean ,用来接收数据所使用的类;存储数据 Bean
务逻辑 Bean
V View 层,视图层,就是给用户展示数据的层,包含页面的样式, html jsp
C Controller 层,控制层,控制页面跳转,控制页面中显示的内容; servlet
MVC 设计模式,不是独属于 Java 的,而是适用于所有的 B/S( 浏览器 / 服务器 ) 项目;
Java 出了独有的 三层架构模式
页面层: web 层,程序中所有和页面有关的内容,都归属于 web 层,包含页面、页面跳转、页面数据
相当于 MVC 中的 V C
业务逻辑层: service 层,用来处理业务请求,相当于 MVC M
持久层: dao 层,所有和数据库打交道的内容,都归属于 dao 层,就是使用 Java 操作数据库进行
增、删、改、查;相当于 MVC M
java 中的容器:保存数据的
变量、数组、集合 (List Set Map) 、对象
 
根据三层架构和 mvc 模式,将 Javaweb 项目设计为: ( 将项目进行分层,分包 )
src 下的包:
model 包:用来写 JavaBean
dao 包:用来进行和数据库之间打交道
service 包:用来对项目中的业务做处理
servlet/controller 包:用来写页面跳转的类、数据传递的类; Servlet
将页面内容全部放在 web 文件夹下编写;
util 包:(工具包) 针对项目中的额外工具而创建的;
 
JDBC
​​​​​​​
操作 MySQL DML 1 、找到 mysql 连接 Java jar 包,将 jar 包导入到 web 程序中;
2 、告诉程序,我要使用的数据库是哪一个;加载相应的数据库驱动;就是创建一个 MySQL 的数据库
对象;
Class.forName("com.mysql.jdbc.Driver");
3. 知道了是哪一个数据库,接着就要连接到数据库哪一个库中;要指定连接的库的名称,以及使用
的用户名、密码
指定连接的库的名称 : url: 标准格式 三部分
jdbc: 各个厂商自己规定的连接写法 mysql://localhost:3306 连接的数据库
及参数 /db?key=value&k2=v2
如: jdbc:mysql://localhost:3306/db?characterEncoding=utf8
用户名: root 密码: root/123456
通过上一步的驱动加载,会告知程序中驱动管理器,接着可以使用驱动管理器将
url,username,password 发送给数据库,从获取一个 Java mysql 数据库之间的连接;
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/db", "root", "root");
4. 通过连接,创建一个查询编辑器 ( 可以用来编写 sql 语句,并且执行的 )
Statement statement = connection.createStatement(); statement 对象就是
查询编辑器,可以执行 sql 语句
5. 编写一条 sql 语句,并执行 , 执行 DML 语句,得到受影响行数
int update = statement.executeUpdate("insert into dept values (50,'
训部 ',' 郑州 ')");
6. 执行完毕后,将全部资源进行关闭,先创建的后关闭,后创建的先关闭;
statement.close();
connection.close();
DQL:
4 步与 DML 操作相同;
5. 编写一条 sql 语句,并执行 , 执行 DQL 语句,得到结果表
ResultSet resultSet = statement.executeQuery("select * from dept ");
6.resultSet 结果集,记录的是当前查询出来的内容,是一条内容,从第一行上方开始 ( 即列名行
),
因为不知道查询出来的结果有多少行,所以需要使用 while 遍历的方式,进行每行数据的查
询;循环条件为 resultSet.next()
通过 resultSet.get 数据类型 ( 第几列 ) 获取到数据库中当前行的第几列的值 如
resultSet.getString(2);
7. 执行完毕后,将全部资源进行关闭,先创建的后关闭,后创建的先关闭;
resultSet.close()
statement.close();
connection.close();
  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拿红罗卜钓鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值