cgb2108-day07 绝地灬酷狼 2022-09-14 15:27 167阅读 0赞 ### 文章目录 ### * * 一,改造JDBC释放资源 * * \--1,完善工具类 * \--2,修改测试类 * 二,HTML * * \--1,入门案例 * \--2,常用标签 * \--3,表格标签 * \--4,表单标签 * \--5,提交数据 * 作业 * * 制作表单 ## 一,改造JDBC释放资源 ## ### –1,完善工具类 ### package cn.tedu.jdbc; import java.sql.*; //提供丰富的方法,方便的jdbc操作 public class JDBCUtils { //1,获取数据库的连接(注册驱动+获取连接) /** * 获取数据库的连接 * @return 数据库的连接对象Connection * @throws Exception */ static public Connection getConnection() throws Exception{ //1,注册驱动 Class.forName("com.mysql.jdbc.Driver");//全路径 //2,获取数据库的连接(用户名/密码) //jdbc连接mysql数据库的协议//本机:端口号/数据库的名字 解决中文乱码 指定时区 关闭权限检验 String url="jdbc:mysql://localhost:3306/cgb2108?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false" ; Connection c = DriverManager.getConnection( url,"root","root"); return c ;//返回给调用者 } /** * 释放资源,提取了长长的代码 * @param r 结果集资源 * @param s 传输器资源 * @param c 连接资源 */ static public void close(ResultSet r, PreparedStatement s,Connection c){ if(r != null){ //避免了空指针异常 try { r.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } } if(s != null) { try { s.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } } if(c != null) { try { c.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } } } } ### –2,修改测试类 ### package cn.tedu.jdbc; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; //JDBC的练习 public class Test3 { public static void main(String[] args) throws Exception{ method();//查询部门表的<100数据 // method2();//向dept表里插入数据 } //向dept表里插入数据 //为了资源一定会被释放? // 把释放资源的代码放入finally里+扩大变量的作用范围 // +在try里修改变量的默认值null+在finally里进行try catch private static void method2(){ //扩大变量的作用范围?因为想让finally也使用 Connection c = null ; PreparedStatement p = null; try{ c = JDBCUtils.getConnection(); //插入数据时怎么决定要几个问号? 要看表里有几个字段需要设置值 String sql = "insert into dept values(?,?,?)" ; p = c.prepareStatement(sql); //设置SQL的参数 p.setObject(1,666); p.setObject(2,"软件测试部"); p.setObject(3,"大山西"); //执行SQL int rows = p.executeUpdate();//执行增删改的SQL //TODO 会返回结果集吗?返回了的是啥? System.out.println("影响的行数是: "+rows); }catch (Exception e){ System.out.println("出错啦~"); }finally { //资源的释放是一定要执行的 //调用工具类里的close(),增删改没有结果集,就不关闭结果集了,传入null就行了 JDBCUtils.close(null,p,c); } } //查询部门表的<100数据 private static void method() { Connection c =null; PreparedStatement s =null; ResultSet r =null; try{ c = JDBCUtils.getConnection();//利用工具类,获取数据库的连接 //获取传输器,执行SQL骨架 String sql = "select * from dept where deptno < ?"; s = c.prepareStatement(sql); //设置SQL的参数 s.setInt(1,100);//给第一个?设置100 r = s.executeQuery();//执行查询的SQL语句 //处理结果集 while(r.next()){ //next()判断有数据吗 //获取数据getXxx()--获取表里的dname字段的值,并打印 String str = r.getString("dname"); System.out.println(str); } }catch (Exception e){ //项目上线阶段,给出的解决方案,比如输出 System.out.println("数据库连接出错~~"); //项目开发调试阶段,给出的解决方案,根据报错信息 e.printStackTrace(); }finally { //关闭资源 JDBCUtils.close(r,s,c);//调用工具类里的close() } } } ## 二,HTML ## ### –1,入门案例 ### <!--常用的快捷键:保存ctrl s,复制粘贴ctrl cv,剪切ctrl x,移动ctrl 箭头--> <!DOCTYPE html> <!-- 文档声明行,声明文档的类型 --> <html> <!-- 标志着这是HTML文档,要有开始标签和结束标签--> <head> <!-- 是网页的头部分,设置网页的标题和编码--> <meta charset="utf-8"><!-- 设置了网页的编码,u8避免中文乱码--> <title>这是测试文件</title> <!-- 设置了网页的标题--> </head> <body> <!-- 是网页的体部分,用来做展示--> 你好 html~ <br/> <!-- br是换行标签, 是一个空格--> 你好 html~ <br/> 你好 ht ml~ </body> </html> ### –2,常用标签 ### <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>测试 常用标签</title> </head> <body> <!-- 1.标题标签:在网页中显示标题内容,h1大~h6小 --> <h1>1号标题</h1> <h2>2号标题</h2> <h3>3号标题</h3> <h4>4号标题</h4> <h5>5号标题</h5> <h6>6号标题</h6> <!-- 2.列表标签:在网页中添加列表内容,ul+li/ol+li --> <ul> <!-- 无序列表 unorderlist--> <li>直击山西水灾:住房地基塌陷</li> <li>经济日报解读美团垄断案</li> </ul> <ol> <!-- 有序列表 orderlist--> <li>直击山西水灾:住房地基塌陷</li> <li>经济日报解读美团垄断案</li> </ol> <!-- 3.图片标签:在网页中插入图片 src是img标签的属性,用来指定图片的路径 width是img标签的属性,用来指定图片的宽度,单位是px像素 height是img标签的属性,用来指定图片的高度,单位是px像素 --> <img src="a.png"/> <img src="2.jpg" width="300px" height="500px"/> <br /> <!-- 4.超链接标签:给元素添加链接效果 href属性用来指定跳转目标 target属性用来指定网页的打开方式.默认是_self用当前窗口打开,_blank用新窗口 --> <a href="https://www.baidu.com/" target="_blank">百度一下</a> <!-- 给图片添加链接效果 --> <a href="https://www.baidu.com/" target="_blank"> <img src="a.png" /> </a> <!-- 给列表添加链接效果 --> <ol> <!-- 有序列表 orderlist--> <li> <a href="https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd=%E7%9B%B4%E5%87%BB%E5%B1%B1%E8%A5%BF%E6%B0%B4%E7%81%BE%3A%E4%BD%8F%E6%88%BF%E5%9C%B0%E5%9F%BA%E5%A1%8C%E9%99%B7&rsv_idx=2&rsv_dl=fyb_n_homepage&hisfilter=1">直击山西水灾:住房地基塌陷</a> </li> <li> <a href="#">经济日报解读美团垄断案</a> </li> </ol> <!-- 锚定:回到顶部 --> <a name="top">我是顶部</a> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <h3>北京富婆通讯录</h3> <a href="#top">点击,回到顶部</a> <!-- 回到name=top的位置处--> <!-- 5.输入框标签: --> 普通的输入框: <input type="text" /> 密码输入框: <input type="password" /> 数字输入框: <input type="number" /> 年月日输入框: <input type="date" /> 周输入框: <input type="week" /> 按钮: <input type="button" value="保存"/> <button>登录</button> 提交按钮:把前端页面输入的数据提交给后端java程序处理 <input type="submit" value="注册"/> <button type="submit">提交</button> 单选:<input type="radio" />男 多选:<input type="checkbox"/>杨幂 <input type="checkbox"/>迪丽热巴 <input type="checkbox"/>Anglelababa <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> </body> </html> ### –3,表格标签 ### <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>测试 表格表单标签</title> </head> <body> <!-- 1.练习:向网页中插入三行三列的表格 是有结构的:table表格,tr行,td列 border属性用来设置表格的边框宽度,bordercolor边框的颜色 width属性用来设置表格的宽度,bgcolor属性用来设置表格的背景色 cellspacing属性用来设置表格里单元格的间距 单元格的合并:行合并rowspan/列合并colspan --> <table border="2px" width="500px" bgcolor="pink" bordercolor="yellow" cellspacing="0"> <tr> <td colspan="2">11</td> <td>13</td> </tr> <tr> <td>21</td> <td>22</td> <td rowspan="2">23</td> </tr> <tr> <td>31</td> <td>32</td> </tr> </table> <!-- 2.表格的练习 --> <h1>流量调查表</h1> <table border="1px" bordercolor="green"> <tr> <th>总页面流量</th> <th>共计来访</th> <th>会员</th> <th>游客</th> </tr> <tr> <td>21</td> <td>22</td> <td>23</td> <td>24</td> </tr> <tr> <td>31</td> <td>32</td> <td>33</td> <td>34</td> </tr> <tr> <td>41</td> <td>42</td> <td>43</td> <td>44</td> </tr> <tr> <td>平均每人浏览</td> <td colspan="3">1.58</td> </tr> </table> </body> </html> ### –4,表单标签 ### <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>测试 表单标签</title> </head> <body> <!--1.表单:本质就是表格,只有表单才能提交数据(把浏览器输入的数据交给java程序处理)--> <form> <h1>注册表单</h1> <table bgcolor="lightgray" border="1px" bordercolor="green" cellspacing="0" width="500px"> <tr> <td>用户名:</td> <td> <input type="text" /> </td> </tr> <tr> <td>密码:</td> <td> <input type="password" /> </td> </tr> <tr> <td>确认密码:</td> <td> <input type="password" /> </td> </tr> <tr> <td>昵称:</td> <td> <input type="text" /> </td> </tr> <tr> <td>邮箱:</td> <td> <input type="email" /> </td> </tr> <tr> <td>性别:</td> <td> <input type="radio" />男 <input type="radio" />女 </td> </tr> <tr> <td>爱好:</td> <td> <input type="checkbox" />篮球 <input type="checkbox" />足球 <input type="checkbox" />乒乓球 </td> </tr> <tr> <td>城市:</td> <td> <select> <!-- 定义下拉框--> <option>-请选择-</option> <!-- 定义下拉选项--> <option>北京</option> <option>广东</option> </select> </td> </tr> <tr> <td>头像:</td> <td> <input type="file" /> </td> </tr> <tr> <td>验证码:</td> <td> <input type="text" /> <img src="a.png" /> <input type="button" value="点我换一张"/> </td> </tr> <tr> <td>自我描述:</td> <td> <textarea></textarea> <!-- 文本域--> </td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" /> <input type="reset" value="重置"/> </td> </tr> </table> </form> </body> </html> ### –5,提交数据 ### <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>测试 表单标签</title> </head> <body> <!--1.表单:本质就是表格,只有表单才能提交数据(把浏览器输入的数据交给java程序处理) form标签专门用来提交数据:form标签 + 必须有submit按钮 + 必须配置name属性 地址栏: http://127.0.0.1:8848/cgb2108/test3.html?user=jack ?用来拼接用户输入的数据,user=jack,其中user是给标签配置的name属性的值,jack是用户从浏览器上输入数据 --> <form> <h1>注册表单</h1> <table bgcolor="lightgray" border="1px" bordercolor="green" cellspacing="0" width="500px"> <tr> <td>用户名:</td> <td> <input type="text" name="user"/> </td> </tr> <tr> <td>密码:</td> <td> <input type="password" name="pwd" /> </td> </tr> <tr> <td>确认密码:</td> <td> <input type="password" name="repwd"/> </td> </tr> <tr> <td>昵称:</td> <td> <input type="text" name="nick"/> </td> </tr> <tr> <td>邮箱:</td> <td> <input type="email" name="mail" /> </td> </tr> <tr> <td>性别:</td> <td> <!-- 问题1:提交的数据都是on,加value属性,区分提交的数据--> <input type="radio" name="sex" value="1"/>男 <input type="radio" name="sex" value="0"/>女 </td> </tr> <tr> <td>爱好:</td> <td> <input type="checkbox" />篮球 <input type="checkbox" />足球 <input type="checkbox" />乒乓球 </td> </tr> <tr> <td>城市:</td> <td> <select> <!-- 定义下拉框--> <option>-请选择-</option> <!-- 定义下拉选项--> <option>北京</option> <option>广东</option> </select> </td> </tr> <tr> <td>头像:</td> <td> <input type="file" /> </td> </tr> <tr> <td>验证码:</td> <td> <input type="text" /> <img src="a.png" /> <input type="button" value="点我换一张"/> </td> </tr> <tr> <td>自我描述:</td> <td> <textarea></textarea> <!-- 文本域--> </td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" /> <input type="reset" value="重置"/> </td> </tr> </table> </form> </body> </html> ## 作业 ## ### 制作表单 ### ![在这里插入图片描述][watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBAY2dibHB4_size_20_color_FFFFFF_t_70_g_se_x_16] [watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBAY2dibHB4_size_20_color_FFFFFF_t_70_g_se_x_16]: /images/20220828/6b205c6830ac42faa6f34f40e5bf655a.png
相关 cgb2108-day07 文章目录 一,改造JDBC释放资源 \--1,完善工具类 \--2,修改测试类 二,HTML 绝地灬酷狼/ 2022年09月14日 15:27/ 0 赞/ 168 阅读
相关 cgb2108-day01 文章目录 一,数据库 \--1,概述 \--2,安装 \--3,数据库结构 二, 雨点打透心脏的1/2处/ 2022年09月12日 13:57/ 0 赞/ 134 阅读
相关 cgb2106-day07 文章目录 一,HTML练习 \--1,改造用户注册的表单 \--2,创建学生系统的表单 二,CSS 向右看齐/ 2021年09月11日 03:20/ 0 赞/ 227 阅读
还没有评论,来说两句吧...