发表时间:2022-03-24来源:网络
内容目录:
一、软件安装教程
二、抬头看路:前辈们的经验
三、最近的一个程序展示
四、近期学习总结与体会
第一大步骤:软件安装教程;
1.eclipse安装
https://www.cnblogs.com/ForestDeer/p/6647402.html
2.tomcat安装
https://blog.csdn.net/u014543872/article/details/79568712
3.数据库安装
http://www.cnblogs.com/sshoub/p/4321640.html
4.Sqlyang破解版下载
http://www.onlinedown.net/soft/24926.htm
第二大步骤:抬头看路
1.如何利用eclipse创建一个java web项目?
https://blog.csdn.net/qq_25646191/article/details/78776136
2.根据教程实现一个完整的javaweb项目
https://www.cnblogs.com/optblogs/p/7880996.html
3.javaweb学习路线
https://www.cnblogs.com/aishangJava/p/5970576.html
https://blog.csdn.net/yl1712725180/article/details/79329865
Javaweb学习总结
http://www.cnblogs.com/xdp-gacl/p/3729033.html
Java Web项目开发到底需要掌握哪些技术?
https://blog.csdn.net/javaniuniu/article/details/51880901
零基础如何系统学习Java Web?
https://www.zhihu.com//31151832
安利代码:

1 package com.hjf.dao;
2
3 import java.sql.Connection;
4 import java.sql.ResultSet;
5 import java.sql.S;
6 import java.sql.Statement;
7 import java.util.ArrayList;
8 import java.util.List;
9
10 import com.hjf.entity.Course;
11 import com.hjf.util.DBUtil;
12
13 /**
14 * 课程Dao
15 * Dao层操作数据
16 * @author Hu
17 *
18 */
19 public class CourseDao {
20
21 /**
22 * 添加
23 * @param course
24 * @return
25 */
26 public boolean add(Course course) {
27 String sql = "insert into course(name, teacher, classroom) values('" + course.getName() + "','" + course.getTeacher() + "','" + course.getClassroom() + "')";
28 //创建数据库链接
29 Connection conn = DBUtil.getConn();
30 Statement state = null;
31 boolean f = false;
32 int a = 0;
33
34 try {
35 state = conn.createStatement();
36 state.executeUpdate(sql);
37 } catch (Exception e) {
38 e.printStackTrace();
39 } finally {
40 //关闭连接
41 DBUtil.close(state, conn);
42 }
43
44 if (a > 0) {
45 f = true;
46 }
47 return f;
48 }
49
50 /**
51 * 删除
52 *
53 * @param id
54 * @return
55 */
56 public boolean delete (int id) {
57 boolean f = false;
58 String sql = "delete from course where id='" + id + "'";
59
60 Connection conn = DBUtil.getConn();
61 Statement state = null;
62 int a = 0;
63
64 try {
65 state = conn.createStatement();
66 a = state.executeUpdate(sql);
67 } catch (S e) {
68 e.printStackTrace();
69 } finally {
70 DBUtil.close(state, conn);
71 }
72
73 if (a > 0) {
74 f = true;
75 }
76 return f;
77 }
78
79 /**
80 * 修改
81 * @param name
82 * @param pass
83 */
84 public boolean update(Course course) {
85 String sql = "update course set name='" + course.getName() + "', teacher='" + course.getTeacher() + "', classroom='" + course.getClassroom()
86 + "' where id='" + course.getId() + "'";
87 Connection conn = DBUtil.getConn();
88 Statement state = null;
89 boolean f = false;
90 int a = 0;
91
92 try {
93 state = conn.createStatement();
94 a = state.executeUpdate(sql);
95 } catch (S e) {
96 e.printStackTrace();
97 } finally {
98 DBUtil.close(state, conn);
99 }
100
101 if (a > 0) {
102 f = true;
103 }
104 return f;
105 }
106
107 /**
108 * 验证课程名称是否唯一
109 * true --- 不唯一
110 * @param name
111 * @return
112 */
113 public boolean name(String name) {
114 boolean flag = false;
115 String sql = "select name from course where name = '" + name + "'";
116 Connection conn = DBUtil.getConn();
117 Statement state = null;
118 ResultSet rs = null;
119
120 try {
121 state = conn.createStatement();
122 rs = state.executeQuery(sql);
123 while (rs.next()) {
124 flag = true;
125 }
126 } catch (S e) {
127 e.printStackTrace();
128 } finally {
129 DBUtil.close(rs, state, conn);
130 }
131 return flag;
132 }
133
134 /**
135 * 通过ID得到课程信息
136 * @param id
137 * @return
138 */
139 public Course getCourseById(int id) {
140 String sql = "select * from course where id ='" + id + "'";
141 Connection conn = DBUtil.getConn();
142 Statement state = null;
143 ResultSet rs = null;
144 Course course = null;
145
146 try {
147 state = conn.createStatement();
148 rs = state.executeQuery(sql);
149 while (rs.next()) {
150 String name = rs.getString("name");
151 String teacher = rs.getString("teacher");
152 String classroom = rs.getString("classroom");
153 course = new Course(id, name, teacher, classroom);
154 }
155 } catch (Exception e) {
156 e.printStackTrace();
157 } finally {
158 DBUtil.close(rs, state, conn);
159 }
160
161 return course;
162 }
163
164 /**
165 * 通过name得到Course
166 * @param name
167 * @return
168 */
169 public Course getCourseByName(String name) {
170 String sql = "select * from course where name ='" + name + "'";
171 Connection conn = DBUtil.getConn();
172 Statement state = null;
173 ResultSet rs = null;
174 Course course = null;
175
176 try {
177 state = conn.createStatement();
178 rs = state.executeQuery(sql);
179 while (rs.next()) {
180 int id = rs.getInt("id");
181 String teacher = rs.getString("teacher");
182 String classroom = rs.getString("classroom");
183 course = new Course(id, name, teacher, classroom);
184 }
185 } catch (Exception e) {
186 e.printStackTrace();
187 } finally {
188 DBUtil.close(rs, state, conn);
189 }
190
191 return course;
192 }
193
194 /**
195 * 查找
196 * @param name
197 * @param teacher
198 * @param classroom
199 * @return
200 */
201 public List search(String name, String teacher, String classroom) {
202 String sql = "select * from course where ";
203 if (name != "") {
204 sql += "name like '%" + name + "%'";
205 }
206 if (teacher != "") {
207 sql += "teacher like '%" + teacher + "%'";
208 }
209 if (classroom != "") {
210 sql += "classroom like '%" + classroom + "%'";
211 }
212 List list = new ArrayList();
213 Connection conn = DBUtil.getConn();
214 Statement state = null;
215 ResultSet rs = null;
216
217 try {
218 state = conn.createStatement();
219 rs = state.executeQuery(sql);
220 Course bean = null;
221 while (rs.next()) {
222 int id = rs.getInt("id");
223 String name2 = rs.getString("name");
224 String teacher2 = rs.getString("teacher");
225 String classroom2 = rs.getString("classroom");
226 bean = new Course(id, name2, teacher2, classroom2);
227 list.add(bean);
228 }
229 } catch (S e) {
230 e.printStackTrace();
231 } finally {
232 DBUtil.close(rs, state, conn);
233 }
234
235 return list;
236 }
237
238 /**
239 * 全部数据
240 * @param name
241 * @param teacher
242 * @param classroom
243 * @return
244 */
245 public List list() {
246 String sql = "select * from course";
247 List list = new ArrayList();
248 Connection conn = DBUtil.getConn();
249 Statement state = null;
250 ResultSet rs = null;
251
252 try {
253 state = conn.createStatement();
254 rs = state.executeQuery(sql);
255 Course bean = null;
256 while (rs.next()) {
257 int id = rs.getInt("id");
258 String name2 = rs.getString("name");
259 String teacher2 = rs.getString("teacher");
260 String classroom2 = rs.getString("classroom");
261 bean = new Course(id, name2, teacher2, classroom2);
262 list.add(bean);
263 }
264 } catch (S e) {
265 e.printStackTrace();
266 } finally {
267 DBUtil.close(rs, state, conn);
268 }
269
270 return list;
271 }
272
273 }
CourseDao。java

1 package com.hjf.entity;
2
3 public class Course {
4
5 private int id;
6 private String name;
7 private String teacher;
8 private String classroom;
9
10 public int getId() {
11 return id;
12 }
13 public void setId(int id) {
14 this.id = id;
15 }
16 public String getName() {
17 return name;
18 }
19 public void setName(String name) {
20 this.name = name;
21 }
22 public String getTeacher() {
23 return teacher;
24 }
25 public void setTeacher(String teacher) {
26 this.teacher = teacher;
27 }
28 public String getClassroom() {
29 return classroom;
30 }
31 public void setClassroom(String classroom) {
32 this.classroom = classroom;
33 }
34
35 public Course() {}
36
37 public Course(int id, String name, String teacher, String classroom) {
38 this.id = id;
39 this.name = name;
40 this.teacher = teacher;
41 this.classroom = classroom;
42 }
43
44 public Course(String name, String teacher, String classroom) {
45 this.name = name;
46 this.teacher = teacher;
47 this.classroom = classroom;
48 }
49 }
Course.java

1 package com.hjf.service;
2
3 import java.util.List;
4
5 import com.hjf.dao.CourseDao;
6 import com.hjf.entity.Course;
7
8 /**
9 * CourseService
10 * 服务层
11 * @author Hu
12 *
13 */
14 public class CourseService {
15
16 CourseDao cDao = new CourseDao();
17
18 /**
19 * 添加
20 * @param course
21 * @return
22 */
23 public boolean add(Course course) {
24 boolean f = false;
25 if(!cDao.name(course.getName())) {
26 cDao.add(course);
27 f = true;
28 }
29 return f;
30 }
31
32 /**
33 * 删除
34 */
35 public void del(int id) {
36 cDao.delete(id);
37 }
38
39 /**
40 * 修改
41 * @return
42 */
43 public void update(Course course) {
44 cDao.update(course);
45 }
46
47 /**
48 * 通过ID得到一个Course
49 * @return
50 */
51 public Course getCourseById(int id) {
52 return cDao.getCourseById(id);
53 }
54
55 /**
56 * 通过Name得到一个Course
57 * @return
58 */
59 public Course getCourseByName(String name) {
60 return cDao.getCourseByName(name);
61 }
62
63 /**
64 * 查找
65 * @return
66 */
67 public List search(String name, String teacher, String classroom) {
68 return cDao.search(name, teacher, classroom);
69 }
70
71 /**
72 * 全部数据
73 * @return
74 */
75 public List list() {
76 return cDao.list();
77 }
78 }
CourseService.java

1 package com.hjf.servlet;
2
3 import java.io.IOException;
4 import java.util.List;
5 import javax.servlet.ServletException;
6 import javax.servlet.annotation.WebServlet;
7 import javax.servlet.http.HttpServlet;
8 import javax.servlet.http.HttpServletRequest;
9 import javax.servlet.http.HttpServletResponse;
10
11 import com.hjf.entity.Course;
12 import com.hjf.service.CourseService;
13
14 @WebServlet("/CourseServlet")
15 public class CourseServlet extends HttpServlet {
16
17 private static final long serialVersionUID = 1L;
18
19 CourseService service = new CourseService();
20
21 /**
22 * 方法选择
23 */
24 protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
25 req.setCharacterEncoding("utf-8");
26 String method = req.getParameter("method");
27
28 if ("add".equals(method)) {
29 add(req, resp);
30 } else if ("del".equals(method)) {
31 del(req, resp);
32 } else if ("update".equals(method)) {
33 update(req, resp);
34 } else if ("search".equals(method)) {
35 search(req, resp);
36 } else if ("getcoursebyid".equals(method)) {
37 getCourseById(req, resp);
38 } else if ("getcoursebyname".equals(method)) {
39 getCourseByName(req, resp);
40 } else if ("list".equals(method)) {
41 list(req, resp);
42 }
43 }
44
45 /**
46 * 添加
47 * @param req
48 * @param resp
49 * @throws IOException
50 * @throws ServletException
51 */
52 private void add(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
53 req.setCharacterEncoding("utf-8");
54 //获取数据
55 String name = req.getParameter("name");
56 String teacher = req.getParameter("teacher");
57 String classroom = req.getParameter("classroom");
58 Course course = new Course(name, teacher, classroom);
59
60 //添加后消息显示
61 if(service.add(course)) {
62 req.setAttribute("message", "添加成功");
63 req.getRe("add.jsp").forward(req,resp);
64 } else {
65 req.setAttribute("message", "课程名称重复,请重新录入");
66 req.getRe("add.jsp").forward(req,resp);
67 }
68 }
69
70 /**
71 * 全部
72 * @param req
73 * @param resp
74 * @throws ServletException
75 */
76 private void list(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
77 req.setCharacterEncoding("utf-8");
78
79 List courses = service.list();
80 req.setAttribute("courses", courses);
81 req.getRe("list.jsp").forward(req,resp);
82 }
83
84 /**
85 * 通过ID得到Course
86 * @param req
87 * @param resp
88 * @throws ServletException
89 */
90 private void getCourseById(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
91 req.setCharacterEncoding("utf-8");
92 int id = Integer.parseInt(req.getParameter("id"));
93 Course course = service.getCourseById(id);
94 req.setAttribute("course", course);
95 req.getRe("detail2.jsp").forward(req,resp);
96 }
97
98 /**
99 * 通过名字查找
100 * 跳转至删除
101 * @param req
102 * @param resp
103 * @throws IOException
104 * @throws ServletException
105 */
106 private void getCourseByName(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
107 req.setCharacterEncoding("utf-8");
108 String name = req.getParameter("name");
109 Course course = service.getCourseByName(name);
110 if(course == null) {
111 req.setAttribute("message", "查无此课程!");
112 req.getRe("del.jsp").forward(req,resp);
113 } else {
114 req.setAttribute("course", course);
115 req.getRe("detail.jsp").forward(req,resp);
116 }
117 }
118
119 /**
120 * 删除
121 * @param req
122 * @param resp
123 * @throws IOException
124 * @throws ServletException
125 */
126 private void del(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
127 req.setCharacterEncoding("utf-8");
128 int id = Integer.parseInt(req.getParameter("id"));
129 service.del(id);
130 req.setAttribute("message", "删除成功!");
131 req.getRe("del.jsp").forward(req,resp);
132 }
133
134 /**
135 * 修改
136 * @param req
137 * @param resp
138 * @throws IOException
139 * @throws ServletException
140 */
141 private void update(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
142 req.setCharacterEncoding("utf-8");
143 int id = Integer.parseInt(req.getParameter("id"));
144 String name = req.getParameter("name");
145 String teacher = req.getParameter("teacher");
146 String classroom = req.getParameter("classroom");
147 Course course = new Course(id, name, teacher, classroom);
148
149 service.update(course);
150 req.setAttribute("message", "修改成功");
151 req.getRe("CourseServlet?method=list").forward(req,resp);
152 }
153
154 /**
155 * 查找
156 * @param req
157 * @param resp
158 * @throws ServletException
159 */
160 private void search(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
161 req.setCharacterEncoding("utf-8");
162 String name = req.getParameter("name");
163 String teacher = req.getParameter("teacher");
164 String classroom = req.getParameter("classroom");
165 List courses = service.search(name, teacher, classroom);
166 req.setAttribute("courses", courses);
167 req.getRe("searchlist.jsp").forward(req,resp);
168 }
169 }
CourseServlet.java

1 package com.hjf.util;
2
3 import java.sql.Connection;
4 import java.sql.DriverManager;
5 import java.sql.PreparedStatement;
6 import java.sql.ResultSet;
7 import java.sql.S;
8 import java.sql.Statement;
9
10 /**
11 * 数据库连接工具
12 * @author Hu
13 *
14 */
15 public class DBUtil {
16
17 public static String db_url = "jdbc:mysql://localhost:3306/course";
18 public static String db_user = "root";
19 public static String db_pass = "root";
20
21 public static Connection getConn () {
22 Connection conn = null;
23
24 try {
25 Class.forName("com.mysql.jdbc.Driver");//加载驱动
26 conn = DriverManager.getConnection(db_url, db_user, db_pass);
27 } catch (Exception e) {
28 e.printStackTrace();
29 }
30
31 return conn;
32 }
33
34 /**
35 * 关闭连接
36 * @param state
37 * @param conn
38 */
39 public static void close (Statement state, Connection conn) {
40 if (state != null) {
41 try {
42 state.close();
43 } catch (S e) {
44 e.printStackTrace();
45 }
46 }
47
48 if (conn != null) {
49 try {
50 conn.close();
51 } catch (S e) {
52 e.printStackTrace();
53 }
54 }
55 }
56
57 public static void close (ResultSet rs, Statement state, Connection conn) {
58 if (rs != null) {
59 try {
60 rs.close();
61 } catch (S e) {
62 e.printStackTrace();
63 }
64 }
65
66 if (state != null) {
67 try {
68 state.close();
69 } catch (S e) {
70 e.printStackTrace();
71 }
72 }
73
74 if (conn != null) {
75 try {
76 conn.close();
77 } catch (S e) {
78 e.printStackTrace();
79 }
80 }
81 }
82
83 public static void main(String[] args) throws S {
84 Connection conn = getConn();
85 PreparedStatement pstmt = null;
86 ResultSet rs = null;
87 String sql ="select * from course";
88 pstmt = conn.prepareStatement(sql);
89 rs = pstmt.executeQuery();
90 if(rs.next()){
91 System.out.println("空");
92 }else{
93 System.out.println("不空");
94 }
95 }
96 }
DBUtil.java

add.jsp

1
3
4
5
6
7 Insert title here
8
9
10
11
16
17 alert("");
18
19
20
21 
1
3
4
5
6
7 Insert title here
8
9 .a{
10 margin-top: 20px;
11 }
12 .b{
13 font-size: 20px;
14 width: 160px;
15 color: white;
16 background-color: greenyellow;
17 }
18 .tb, td {
19 border: 1px solid black;
20 font-size: 22px;
21 }
22
23
24
25
26 
1
3
4
5
6
7 Insert title here
8
9
10
11
16
17 alert("");
18
19
20
21 
1
3
4
5
6
7 首页
8
9
10
11
12
13
14 课程信息添加
15
16
17 课程信息修改
18
19
20 课程信息删除
21
22
23 课程信息查询
24
25
26
27
index.jsp

1
3
4
5
6
7
8 Insert title here
9
10
11
12
17
18 alert("");
19
20
21
22 
1
3
4
5
6
7 Insert title here
8
9
10
11
12 
1
3
4
5
6
7
8 Insert title here
9
10
11
12
13 导入jar包(问度娘):

效果展示:




第三步骤:我最近的学习感受+一个程序详解+知识点
模块一:
I.简介JavaWEB程序
JavaWeb项目就是一个应用程序,你不要以为它有多么神秘。你每天打开的QQ就一个应用程序,你在手机上打开的微信,百度地图等等,这些都是应用程序。
不同的是,QQ是一个本地客户端程序,它需要你在自己的电脑上安装一个客户端,然后你打开QQ,可以登录,聊天。
QQ肯定也分客户端和服务端,我们电脑上装的就是客户端,你要知道的一点是,我们发送消息,发送到哪里去了呢?
没错,肯定是发送到QQ的服务器上了,那里保存着我们的所有数据。
想想也不可能在本地,因为我们在电脑上发送的消息,在手机QQ上不是也能看到吗?这就说明,肯定是上传到它的服务器然后保存下来了。
而Web项目是什么呢?
它也是一个应用程序,只不过它的客户端是运行在浏览器上的。
我们打开浏览器,访问一个地址,比如 http://www.jianshu.com/
这个就是我们的访问路径,我们通过这个URL向简书的服务器提交请求,然后服务器进行处理,给你回应。
接下来,我们就看到出来一个网页。
我们在这个网页上可以写文章,点赞,收藏,等等。
我们的每一步操作,其实都和服务器做了一个交互。
比如一个登录功能,当我们鼠标点击那个登录按钮,浏览器就向服务器提交了一个请求,服务器进行处理,然后操作数据库。最终,它会得出一个结果,就是说,到底能不能让你登录,总会有个说法。
如果你密码写错了,它可能就会得出一个用户名或密码错误的结论。然后,这个信息会从服务器返回到前台,前台就是浏览器。
所谓的前台就是你的浏览器,没什么神秘的。
前台接受到后台传过来的信息后,进行一些处理,然后给你个提示,比如,告诉你用户名或密码错误。
这就是一个完整的交互过程。
现在随着网速越来越好,浏览器的性能越来越强大,我想web肯定是未来的大趋势。毕竟,谁都不希望在电脑上安装一大堆客户端吧。
只用一个浏览器多好。
有了web,我只需要有一个浏览器,然后就能通过互联网获取我想要的资源了。这样不是很美妙吗?
II.不建议一开始就看视频,先把那些基础理论知识过一次,心里有点踏实了,到了需要敲大量代码的阶段再看视频。
模块三:知识点
javaweb制作流程的形象理解


1.有关数据库的知识点:
【MYSQL的概述】
什么是数据库:数据库就是一个文件系统,需要通过标准SQL语句才能访问.
【MYSQL的安装和卸载】
安装和卸载的过程记录下服务器安装的路径和数据文件存放的路径.卸载的时候将这个两个路径下的文件一并都删除掉.
【创建数据库】
语法:
* create database 数据库名;
【查看数据库】
* 查看数据库服务器中的所有的数据库:show databases;
【删除数据库】
* drop database 数据库名称;
【修改数据库】
* alter database 数据库名
【其他的数据库操作命令】
* 切换数据库:use 数据库名;
* 查看正在使用的数据库:select database();
【创建表】
create table 表名(
字段名 类型(长度) 约束,
字段名 类型(长度) 约束
);
单表约束:
* 主键约束:primary key
* 唯一约束:unique
* 非空约束:not null
创建一个分类表:
分类ID int类型主键 自动增长
分类名称 字符串类型 长度20
create table category(
cid int primary key auto_increment,
cname varchar(20)
);
***** 注意:建表之前一定先选择数据库.
【查看表】
查看数据库中的所有表:show tables;
查看表结构:desc 表名;
【删除表】
drop table 表名;
【修改表】
alter table 表名 add 列名 类型(长度) 约束; --修改表添加列.
alter table 表名 modify 列名 类型(长度) 约束; --修改表修改列的类型长度及约束.
alter table 表名 change 旧列名 新列名 类型(长度) 约束; --修改表修改列名.
alter table 表名 drop 列名; --修改表删除列.
rename table 表名 to 新表名; --修改表名
【插入记录】
语法:
* insert into 表 (列名1,列名2,列名3..) values (值1,值2,值3..); -- 向表中插入某些列
* insert into 表 values (值1,值2,值3..); --向表中插入所有列
【修改记录】
语法:
* update 表名 set 字段名=值,字段名=值 [where 条件];
【删除记录】
语法:
* delete from 表名 [where 条件];
【查询记录】
语法:
* select [distinct]*[列名,列名] from 表 [where 条件].
创建商品表:
创建商品表:
create table products(
pid int primary key auto_increment,
pname varchar(20),
price double,
pnum int,
cno int,
pdate timestamp
);
【多表查询】
交叉连接查询(基本不会使用-得到的是两个表的乘积)语法:
* select * from A,B;
2.有关前端页面的知识点:
【HTML的概述】
什么是HTMLHTML:Hyper Text Markup Language 超文本标记语言
l 超文本:比文本功能更加强大
l 标记语言:通过一组标签对内容进行描述的一门语言
为什么学习HTMLHTML是设计页面基础
在哪些地方可以使用HTML设计页面的时候都可以使用HTML
如何使用HTMLHTML的语法和规范
l HTML文件的扩展名是.html或者是.htm
l HTML文件是由头和体组成
l HTML这组标签是不区分大小写
l HTML的标记通常是由开始标签和结束标签组成:内容
【HTML的字体标签】
标签
文字
l size:控制字体大小.最小1 最大7
l color:控制字体颜色. 使用英文设置 ,使用16进制数设置
l face:控制字体.
【HTML的排版标签】
标题标签
段落标签
一段文字
换行标签
代表换行
水平线标签
字体加粗
文字
斜体标签
斜体
【HTML的图片标记】

1 package com.itheima.jdbc.utils;
2
3 import java.io.FileInputStream;
4 import java.io.FileNotFoundException;
5 import java.io.IOException;
6 import java.sql.Connection;
7 import java.sql.DriverManager;
8 import java.sql.ResultSet;
9 import java.sql.S;
10 import java.sql.Statement;
11 import java.util.Properties;
12
13 /**
14 * JDBC的工具类
15 * @author apple
16 *
17 */
18 public class JDBCUtils {
19 public static final String DRIVERCLASS;
20 public static final String URL;
21 public static final String USERNAME;
22 public static final String PASSWORD;
23
24 static{
25 // 获得属性文件中的数据.
26 Properties properties = new Properties();
27 try {
28 properties.load(new FileInputStream("src/db.properties"));
29 } catch (FileNotFoundException e) {
30 e.printStackTrace();
31 } catch (IOException e) {
32 e.printStackTrace();
33 }
34
35 DRIVERCLASS = properties.getProperty("jdbc.driverClass");
36 URL = properties.getProperty("jdbc.url");
37 USERNAME = properties.getProperty("jdbc.username");
38 PASSWORD = properties.getProperty("jdbc.password");
39 }
40
41 // 加载驱动:
42 public static void loadDriver(){
43 try {
44 Class.forName(DRIVERCLASS);
45 } catch (ClassNotFoundException e) {
46 // TODO Auto-generated catch block
47 e.printStackTrace();
48 }
49 }
50
51 // 获得连接:
52 public static Connection getConnection(){
53 loadDriver();
54 Connection conn = null;
55 try {
56 conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
57 } catch (S e) {
58 // TODO Auto-generated catch block
59 e.printStackTrace();
60 }
61 return conn;
62 }
63
64 // 释放资源:
65 public static void release(Statement stmt,Connection conn){
66 if(stmt != null){
67 try {
68 stmt.close();
69 } catch (S e) {
70 // TODO Auto-generated catch block
71 e.printStackTrace();
72 }
73 stmt = null;
74 }
75
76 if(conn != null){
77 try {
78 conn.close();
79 } catch (S e) {
80 e.printStackTrace();
81 }
82 conn = null;
83 }
84 }
85
86 public static void release(ResultSet rs,Statement stmt,Connection conn){
87 if(rs!= null){
88 try {
89 rs.close();
90 } catch (S e) {
91 e.printStackTrace();
92 }
93 rs = null;
94 }
95 if(stmt != null){
96 try {
97 stmt.close();
98 } catch (S e) {
99 // TODO Auto-generated catch block
100 e.printStackTrace();
101 }
102 stmt = null;
103 }
104
105 if(conn != null){
106 try {
107 conn.close();
108 } catch (S e) {
109 e.printStackTrace();
110 }
111 conn = null;
112 }
113 }
114 }
代码实现之抽取工具类:
XML全称为Extensible Markup Language,意思是可扩展的标记语言。XML语法上和HTML比较相似,但HTML中的元素是固定的,而XML的标签是可以由用户自定义的。

1
2
3
4 HelloMyServlet
5 cn.itcast.HelloMyServlet
6
7
8 HelloMyServlet
9 /hello
10
11
配置文件

1
2
3
4 张三
5
6
7 李四
8
9
存放数据
l XML文档声明
文档声明必须为结束; 文档声明必须从文档的0行0列位置开始; 文档声明只有三个属性:a) versioin:指定XML文档版本。必须属性,因为我们不会选择1.1,只会选择1.0;
b) encoding:指定当前文档的编码。可选属性,默认值是utf-8;
c) standalone:指定文档独立性。可选属性,默认值为yes,表示当前文档是独立文档。如果为no表示当前文档不是独立的文档,会依赖外部文件。
l 元素
元素是XML文档中最重要的组成部分, 普通元素的结构开始标签、元素体、结束标签组成。例如:大家好 元素体:元素体可以是元素,也可以是文本,例如:你好 空元素:空元素只有开始标签,而没有结束标签,但元素必须自己闭合,例如: 元素命名:a) 区分大小写
b) 不能使用空格,不能使用冒号:
c) 不建议以XML、xml、Xml开头
良好的XML文档,必须有一个根元素。
l 属性
属性是元素的一部分,它必须出现在元素的开始标签中 属性的定义格式:属性名=属性值,其中属性值必须使用单引或双引 一个元素可以有0~N个属性,但一个元素中不能出现同名属性 属性名不能使用空格、冒号等特殊字符,且必须以字母开头l 注释
XML的注释与HTML相同,即以“”结束。注释内容会被XML解析器忽略!
l 转义字符
XML中的转义字符与HTML一样。
因为很多符号已经被XML文档结构所使用,所以在元素体或属性值中想使用这些符号就必须使用转义字符,例如:“”、“’”、“””、“&”。
5.Servlet
【Servlet的概述】
什么是Servlet:是运行在服务器端的一小的Java程序,接收和响应从客户端发送请求.
Servlet的作用:处理客户端的请求,并且对请求作出响应.
使用Servlet:Servlet的入门:
* 编写一个类实现Servlet接口.
public class ServletDemo1 implements Servlet{
@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
// System.out.println("");
response.getWriter().println("Hello Servlet...");
}
...
}
* 配置Servlet到WEB服务器.
aaa
com.itheima.servlet.demo1.ServletDemo1
aaa
/servletDemo1
下一篇:初入江湖学Java(4)
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务