-
JavaWeb基础核心技术
2015-06-10 09:46:12本Java视频教程涵盖JavaWEB 企业级开发所需的Servlet、JSP、MVC 设计模式、EL 表达式、JavaBean、国际化、Cookie和HttpSession、JavaMail等全部核心技术。 授课过程中通过多个企业级案例,将各知识点融会贯通。 -
JavaWeb快速入门(一)——新建JavaWeb项目
2018-07-04 20:01:33下午开始将JavaWeb服务器端程序开发,包含:处理请求和展示返回回来的数据。其中,处理请求分为四步:1、创建javaweb工程,2、开启服务器,3、编写处理请求的代码,4、运行。(一)创建javaweb工程 在创建之前,电脑...今天是暑期实训的第三天,上午继续昨天未讲完的任务java,比如:java的异常处理、java的集合等其它java常用知识,具体讲解链接如下。下午开始将JavaWeb服务器端程序开发,包含:处理请求和展示返回回来的数据。其中,处理请求分为四步:1、创建javaweb工程,2、开启服务器,3、编写处理请求的代码,4、运行。
(一)创建javaweb工程
在创建之前,电脑需要有myeclipse或者eclipse,在这里我用了myeclipse。具体的下载和安装请自行百度。
除此以外,需要用到apache-tomcat,链接:链接:https://pan.baidu.com/s/1IHx29L2k3xikgNDvhGGfJg 密码:r3t9
准备工作完成后,现在就可以开始创建javaweb工程了。
启动myeclipse,点击Browse以选择自己的即将所建工程的工作空间。选择完成后,点击ok。
导航栏File->New->Project,在wizards中输入web来搜索Web选项,以选中Dynamic Web Project。然后点击next,在1处输入自己的工程名,2处选择存储位置,3处点击New Runtime,选择Apache Tomcat v8.0.。然后点击next1处选择在准备工作时,保存的apache tomcat的文件夹。2处,我选择了默认的JRE。然后点击finish。现在,又回到了这个对话框。不要急于点击这里的finish,必须选择点击next两次。
两次next后,到达下图, 一定要选择Generate web.xml deployment descriptor。现在就可以点击finish。
现在,我们就可以在myeclipse工作空间看到我们新建的javaweb项目了。
我们可以知道,在WebRoot文件夹下为html页面,即前端的内容;而在src中为java后台的内容。在WebRoot文件夹下我们可以看到一个index.jsp,其中body部分内容为 <body>This is my JSP page. <br> </body>,我们可以猜测当运行该工程后,应该在页面上显示This is my JSP page.
下面,我们需要部署一个服务器。在如下地方选择Servers,
在空白处右键,点击New->Server,按照如下选择点击next,选中刚才新建的项目名,点击中间的ADD,然后点击finish。现在,我们可以在下图看到新建的项目服务器部署成功。选中下图所示,点击运行
在控制台下,我们可以看到,运行成功。
现在可以在浏览器中,输入网址http://localhost:8088/JavaWebDemo/。其中8088为端口号,默认为8080,JavaWebDemo为所建项目的项目名称。我们可以看到现在在页面上显示的内容与我们预期的内容一致,证明新建JavaWeb项目成功。 -
-
JavaWeb程序设计
2015-05-08 18:03:46本课程主要讲授JavaWeb开发基础中的Servlet与JSP部分,其特色在于其讲解的过程中,通过当堂编写代码的讲授方式讲解“关键知识点”,这些“关键知识点”可保证学生从始至终都能写出可运行的Web程序。 -
javaweb登录注册功能实现 javaweb 登陆注册 入门 mysql数据库交互 web前后台交互 用户管理增删改查 实现...
2016-05-10 15:32:26用户登录注册流程图 老版: 新版: 登陆界面 注册界面 登陆成功界面 LoginServlet import java.io.IOException; import javax.servlet.ServletException;...import javax.servle...用户登录注册流程图
老版:
新版:
登陆界面
注册界面登陆成功界面
LoginServlet
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.wzc.login.dao.UserDao; import com.wzc.login.domain.User; /** * @description 登录请求处理类 * @author WANGZIC */ @WebServlet("/LoginServlet") public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); //接收表单信息 String username = request.getParameter("username"); String password = request.getParameter("password"); String verifyc = request.getParameter("verifycode"); //设置回显 request.setAttribute("username", username); request.setAttribute("password", password); request.setAttribute("verifycode", verifyc); //获取验证码 String svc =(String) request.getSession().getAttribute("sessionverify"); //根据用户名查询用户 User user =new UserDao().findUser(username); if(!svc.equalsIgnoreCase(verifyc)){ request.setAttribute("loginError", "* 验证码错误"); request.getRequestDispatcher("/login.jsp").forward(request, response); return; } if(user!=null){ if(user.getPassword().equals(password)){ request.getSession().setAttribute("user", user); response.sendRedirect("index.jsp"); }else { request.setAttribute("loginError", "* 密码错误"); request.getRequestDispatcher("/login.jsp").forward(request, response); } }else { request.setAttribute("loginError", "* 用户不存在"); request.getRequestDispatcher("/login.jsp").forward(request, response); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } }
RegistServlet
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.wzc.login.dao.UserDao; /** * @description 注册请求处理类 * @author WANGZIC */ @WebServlet("/RegistServlet") public class RegistServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); String username = request.getParameter("username"); String password = request.getParameter("password"); String rpsw = request.getParameter("rpsw"); if(username==null||username.trim().isEmpty()){ request.setAttribute("registError", "用户名不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(password==null||password.trim().isEmpty()){ request.setAttribute("registError", "密码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(!password.equals(rpsw)){ request.setAttribute("registError", "密码不一致"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } UserDao u = new UserDao(); boolean res = u.addUser(username,password); if(res){ response.sendRedirect("index.jsp"); }else { request.setAttribute("registError", "注册失败,该用户名已存在"); request.getRequestDispatcher("/regist.jsp").forward(request, response); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } }
LogoutServlet
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class LogoutServlet */ @WebServlet("/LogoutServlet") public class LogoutServlet extends HttpServlet { private static final long serialVersionUID = 1L; public LogoutServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.getSession().removeAttribute("user"); response.sendRedirect("login.jsp"); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
VerifyCodeServletimport java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * @description 验证码请求生成处理类 * @author WANGZIC */ @WebServlet("/VerifyCodeServlet") public class VerifyCodeServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { VerifyCode vc = new VerifyCode(); request.getSession().setAttribute("sessionverify", vc.getText()); vc.outputImage(90,35,response.getOutputStream()); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } /** * 验证码生成工具内部类 * @author WANGZIC * */ static class VerifyCode { private static final char[] CHARS = { '2', '3', '4', '5', '6', '7', '8','9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' }; private static Random random = new Random(); private String text ; public String getText() { StringBuffer buffer = new StringBuffer(); for (int i = 0; i < 4; i++) { buffer.append(CHARS[random.nextInt(CHARS.length)]); } text = buffer.toString(); return text; } public void outputImage(int width,int height,OutputStream out) throws IOException{ Color color = new Color(random.nextInt(255), random.nextInt(255), random.nextInt(255)); Color reverse = new Color(255 - color.getRed(), 255 - color.getGreen(), 255 - color.getBlue()); BufferedImage bi = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB); Graphics2D g = bi.createGraphics(); g.setFont(new Font(Font.SANS_SERIF, Font.BOLD, 25)); g.setColor(color); g.fillRect(0, 0, width, height); g.setColor(reverse); g.drawString(text, 10, 26); for (int i = 0, n = random.nextInt(80); i < n; i++) { g.drawRect(random.nextInt(width), random.nextInt(height), 1, 1); } ImageIO.write(bi, "JPEG", out); } } }
User
public class User { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
UserDaoimport java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import com.wzc.login.domain.User; /** * @description 数据库连接与操作类用于增删改查数据并返回给servlet使用 * @author WANGZIC * */ public class UserDao { /* * 数据库中运行下面的语句 CREATE TABLE `user` ( `username` varchar(255) NOT NULL, `password` varchar(255) DEFAULT NULL, PRIMARY KEY (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; */ //根据用户名查找用户密码 public User findUser(String username){ String sql = "select * from user where username=?"; Connection con =getConnection(); PreparedStatement pstmt =null; ResultSet rs = null; User user = new User(); try { pstmt = con.prepareStatement(sql); pstmt.setString(1, username); rs = pstmt.executeQuery(); if(rs.next()){ user.setUsername(rs.getString("username")); user.setPassword(rs.getString("password")); } } catch (SQLException e) { e.printStackTrace(); }finally { try { if(pstmt!=null)pstmt.close(); if(con!=null)con.close(); } catch (SQLException e) { e.printStackTrace(); } } return user; } //添加用户 public boolean addUser(String username,String psw){ Connection con = getConnection(); PreparedStatement pstmt =null; String sql = "INSERT INTO user(username,password) VALUES(?,?)"; boolean res = false; try { pstmt = con.prepareStatement(sql); pstmt.setString(1, username); pstmt.setString(2, psw); res = (pstmt.executeUpdate()==1); }catch (SQLException e) { if(!e.getMessage().contains("PRIMARY")){ e.printStackTrace(); } }finally { try { if(pstmt!=null)pstmt.close(); if(con!=null)con.close(); }catch (SQLException e) { e.printStackTrace(); } } return res; } //获得连接 public static Connection getConnection(){ String driver ="com.mysql.jdbc.Driver";//记得依赖mysql-jdbc驱动包 String url ="jdbc:mysql://localhost:3306/mytest";//修改为自己的数据库 String user ="root";//修改未自己数据库的用户名密码 String password ="root";//修改未自己数据库的名密码 Connection connection =null; try { Class.forName(driver); connection =DriverManager.getConnection(url, user, password); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return connection; } public static void main(String[] args) { //测试方法 // System.out.println(new UserDao().findUser("123")); // new UserDao().addUser("1345", "1345"); } }
新增了用户管理功能(对用户的增删改查)
有问题可以加QQ群:483411192
源码下载 下载完源码之后请仔细阅读README.md文件,导入运行步骤和数据库表结构都在里面 -
Eclipse开发JavaWeb项目配置Tomcat,详细教程
2018-01-23 15:22:40首先介绍eclipse开发JavaWeb项目需要配置的相关环境,使用tomcat软件在本地搭建服务器,然后再在eclipse环境下配置tomcat: 第一步:使用tomcat软件在本地搭建服务器,这个本地的tomcat服务器与eclipse环境下配置...以下都经过本人自学时一一自己动手配置实验。
首先介绍eclipse开发JavaWeb项目需要配置的相关环境,使用tomcat软件在本地搭建服务器,然后再在eclipse环境下配置tomcat:
第一步:使用tomcat软件在本地搭建服务器,这个本地的tomcat服务器与eclipse环境下配置tomcat服务器都可以使用,但是只能启动一个,否则会报端口冲突,到时安装好环境会介绍
tomcat软件是apache旗下的一个开源项目。软件下载链接:http://tomcat.apache.org/,如图,我选择的是7.0的环境,并且选择的安装板,不需要配置相关的环境变量,zip版各种环境变量配置麻烦死了,这些个环境软件会在我的结束语中给一个下载地址,也可以根据自己的环境需求下载需要的版本
安装版教程链接可参考:https://wenku.baidu.com/view/869562cd58f5f61fb736668f.html),网上也有很多安装教程链接,介绍下安装成功之后,在计算机管理-应用中就可以看到tomcat的服务如图第三个图标:
打开该图标出现如下窗口:
该窗口中有一个start按钮,点击start按钮,tomcat本地服务器就开启了,点击stop按钮,服务就关闭了
只有在服务开启的情况下,在浏览器中输入http://localhost:8080 进入如下页面表示安装成功。
这里本地tomcat安装成功了。
第二步:eclipse环境下如何配置tomcat服务器:
打开Eclipse,单击“Window”菜单,选择下方的“Preferences”,看是否存在“Server”选项,我目前使用的是eclipse版,不带额外插件,一些使用的Myeclipse集成了J2EE可以忽略此过程。我使用的EclipsePreferences下是没有Server选项,此时需要安装server插件,我的上一篇博客介绍了如何安装server插件,我这里就不详细叙述了,安装了server之后;如图
上图中,点击“add”的添加按钮,弹出如下界面:
上图中,选择对应的Tomcat版本,点击next,如图:
上图中,选择Tomcat的路径,以及JRE(使用工作平台默认的,不用做额外添加修改),点击“完成”,配置完毕。
第三步:建立一个web项目
File
→New
→Dynamic Web Project
,一路next,在该窗口时如图,勾选Gernerate web.xml deployment descriptor ,finish 就ok了让tomcat服务器显示在控制台上,将web应用部署到tomcat中,
Window
→Show View
→Servers
如图点击链接
No servers are available. Click ths link to create a new server.
,在弹出的对话框中选择Tomcat版本 如图:点击“Next”,添加我们的项目 如图:,点击finish
返回eclipse控制台下方的“Servers”面板,右键单击该面板中的“Tomcat v7.0 Server at localhost”节点,在弹出的快捷菜单中单击“Start”,即可启动指定的Web服务器,这里要说明一下就是:很重要,尤其对于不懂的初学者,我也是搞了很久查资料才弄明白,在快捷菜单中单击“Start”启动Web服务器时,弹出如图窗口:
这个是由于你开启了本地tomcat服务器,又开启eclipse集成的tomcat服务器,引起端口冲突,可以先关掉本地tomcat服务器,如图点击stop之后
在操作快捷菜单中单击“Start”启动Web服务器就不会有端口冲突窗口出现了,控制台出现如下提示就ok啦。
测试下,建立一个jsp文件放在webcontent目录下,如图,关于javaweb项目结构,以及建立jsp文件中文乱码就不详细叙述了,网上文档太多了,如图:
随便运行一个jsp文件,右键——>Run As ——>Run on Server, 效果如图:整个过程就ok了
再看下一个细节:
看下一 根据前面的介绍,上图表明,我们新建的项目已经部署到Tomcat服务器上去了,也就是看到了javaweb这个工程发布出去了,双击“Tomcat v7.0 Server at localhost”节点,出现如图信息
上图的红框部分表明,服务的部署是在eclipse里面(默认是放在工作空间里的.metadata文件夹下),而不是在Tomcat里面。我们来改一下,前提是工程并没有发布到Tomcat中去,那我们先把之前发布的版本删了吧(稍后重新发布):
这时再次双击“Tomcat v7.0 Server at localhost”节点,使用Tomcat的安装目录作为部署的位置,并修改部署的路径Deploy path(建议改成Tomcat的webapps目录下),然后保存即可。
这时,重新运行程序。现在来到Tomcat的webapps目录下,发现多了一个javaweb文件夹(即工程文件名),并且文件夹下包含了工程文件中WebContent的内容:
上图说明,说明这才是真正将程序发布到服务器上。
我们再来到Tomcat的work目录中,看一下编译之后的文件:
上图表明,Tomcat会先将jsp文件转为java文件,然后再把java文件编译为class文件,最终执行的是class文件。现在来看一下JSP运行的原理。
到这里总结以下:上面的整个过程,让我们学会了如何配置Tomcat和部署工程文件,明白了jsp文件是怎样发布到服务器上并最终显示出来。关于JSP的进一步学习可以参考网上的教程自学
-
JavaWeb-简单学生信息管理系统的实现-Jsp+Servlet+MySql
2019-04-05 14:58:42关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~ 关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~ 关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~
关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~
运行截图:
项目文件结构:
获取 数据库连接类:
package db; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; /** * @ClassName: DbConnect * @Author: Leo * @Description: * @Date: 2019/3/27 21:36 */ public class DbConnect { public static Connection connection; public static String url = "jdbc:mysql://localhost/stumanage?user=root&password=root" + "&useUnicode=true&characterEncoding=utf-8&useSSL=true"; public static Connection getConnection() { try { Class.forName("com.mysql.cj.jdbc.Driver"); connection = DriverManager.getConnection(url); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return connection; } }
对应学生的实体类:
package entity; public class Student { private long id; private String name; private String sex; private String specialty; private String grade; public Student() { } public Student(long id, String name, String sex, String specialty, String grade) { this.id = id; this.name = name; this.sex = sex; this.specialty = specialty; this.grade = grade; } public Student(String name, String sex, String specialty, String grade) { this.name = name; this.sex = sex; this.specialty = specialty; this.grade = grade; } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getSpecialty() { return specialty; } public void setSpecialty(String specialty) { this.specialty = specialty; } public String getGrade() { return grade; } public void setGrade(String grade) { this.grade = grade; } }
登录界面jsp:
<%-- Created by IntelliJ IDEA. User: 24234 Date: 2019/3/27 Time: 19:26 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %> <html> <head> <title>学生管理系统</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> <center> <form action="/loginServer" method="post"> <table> <tr> <td> 用户名 </td> <td> <input type="text" name="admin"> </td> </tr> <tr> <td> 密  码 </td> <td> <input type="password" name="pwd"> </td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" value="登录"> </td> </tr> </table> </form> </center> </body> </html>
登录servlet:(查询所有学生信息显示到主页面jsp)
package servlet; import db.DbConnect; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * @ClassName: ${NAME} * @Author: Leo * @Description: * @Date: 2019/3/28 20:29 */ @WebServlet(name = "loginServer") public class loginServer extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html"); req.setCharacterEncoding("utf-8"); resp.setCharacterEncoding("utf-8"); String admin = req.getParameter("admin"); String pwd = req.getParameter("pwd"); if (admin.equals("admin") && pwd.equals("123")) { Connection connection = DbConnect.getConnection(); String sql = "SELECT * FROM STUDENT"; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { preparedStatement = connection.prepareStatement(sql); resultSet = preparedStatement.executeQuery(); HttpSession httpSession = req.getSession(); // 设置session有效时间为两小时 httpSession.setMaxInactiveInterval(7200); httpSession.setAttribute("resultSet", resultSet); resp.sendRedirect("loginAction.jsp"); } catch (SQLException e) { e.printStackTrace(); } } else { resp.sendRedirect("index.jsp"); } } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
主页面jsp:
<%@ page import="java.sql.ResultSet" %><%-- Created by IntelliJ IDEA. User: Administrator Date: 2019/3/28 Time: 14:31 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %> <% ResultSet resultSet = (ResultSet) session.getAttribute("resultSet");%> <html> <head> <title>学生管理系统</title> <link rel="stylesheet" type="text/css" href="css/table.css"> </head> <body> <center> <table class="gridtable"> <tr> <td align="center" colspan="6">学生信息</td> </tr> <tr> <td>姓名</td> <td>性别</td> <td>专业</td> <td>年级</td> <td align="center" colspan="2">操作</td> </tr> <% while (resultSet.next()) { %> <tr> <td><%=resultSet.getString("name")%> </td> <td><%=resultSet.getString("sex")%> </td> <td><%=resultSet.getString("specialty")%> </td> <td><%=resultSet.getString("grade")%> </td> <td><a href="selectServlet?id=<%=resultSet.getInt("id")%>">修改</a></td> <td><a href="deleteServlet?id=<%=resultSet.getInt("id")%>" onclick="return confirm('确定删除?')">删除</a></td> </tr> <%}%> <tr> <td align="center" colspan="6"> <a href="stuAdd.jsp">添加</a> </td> </tr> </table> </center> </body> </html>
根据id查询数据库记录:
package servlet; import db.DbConnect; import entity.Student; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * @ClassName: ${NAME} * @Author: Leo * @Description: * @Date: 2019/3/29 15:20 */ @WebServlet(name = "selectServlet") public class selectServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8"); String id = request.getParameter("id"); String sql = "SELECT * FROM STUDENT WHERE ID=?"; Connection connection = DbConnect.getConnection(); PreparedStatement preparedStatement = null; ResultSet resultset = null; Student student = null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setInt(1, Integer.parseInt(id)); resultset = preparedStatement.executeQuery(); while (resultset.next()) { String name = resultset.getString("name"); String sex = resultset.getString("sex"); String specialty = resultset.getString("specialty"); String grade = resultset.getString("grade"); student = new Student(Integer.parseInt(id), name, sex, specialty, grade); } HttpSession httpSession = request.getSession(); httpSession.setAttribute("student", student); response.sendRedirect("stuEdit.jsp"); } catch (SQLException e) { e.printStackTrace(); } } }
修改学生信息jsp:
<%@ page import="entity.Student" %><%-- Created by IntelliJ IDEA. User: 24234 Date: 2019/3/29 Time: 14:59 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %> <html> <head> <title>修改学生信息</title> <link rel="stylesheet" type="text/css" href="css/table.css"> </head> <body> <%Student student = (Student) session.getAttribute("student");%> <form action="/updateServlet" method="post"> <center> <table class="gridtable"> <tr> <td align="center" colspan="2"> 修改学生信息 <input type="hidden" name="id" value="<%=student.getId()%>"> </td> </tr> <tr> <td>姓名</td> <td><input type="text" name="name" value="<%=student.getName()%>"></td> </tr> <tr> <td>性别</td> <td><%if (student.getSex().equals("男")) {%> <input type="radio" name="sex" value="男" checked="checked">男 <input type="radio" name="sex" value="女">女 </td> <% } else { %> <td> <input type="radio" name="sex" value="男">男 <input type="radio" name="sex" value="女" checked="checked">女 </td> <%}%> </tr> <tr> <td>专业</td> <td><input type="text" name="specialty" value="<%=student.getSpecialty()%>"></td> </tr> <tr> <td>年级</td> <td> <% if (student.getGrade().equals("大一")) { %> <select name="grade"> <option value="大一" selected="selected">大一</option> <option value="大二">大二</option> <option value="大三">大三</option> <option value="大四">大四</option> </select> <%} else if (student.getGrade().equals("大二")) {%> <select name="grade"> <option value="大一">大一</option> <option value="大二" selected="selected">大二</option> <option value="大三">大三</option> <option value="大四">大四</option> </select> <%} else if (student.getGrade().equals("大三")) {%> <select name="grade"> <option value="大一">大一</option> <option value="大二">大二</option> <option value="大三" selected="selected">大三</option> <option value="大四">大四</option> </select> <%} else if (student.getGrade().equals("大四")) {%> <select name="grade"> <option value="大一">大一</option> <option value="大二">大二</option> <option value="大三">大三</option> <option value="大四" selected="selected">大四</option> </select> <%}%> </td> </tr> <tr> <td align="center" colspan="2"> <input type="submit" value="修改"> </td> </tr> </table> </center> </form> </body> </html>
修改学生信息servlet:
package servlet; import db.DbConnect; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * @ClassName: ${NAME} * @Author: Leo * @Description: * @Date: 2019/3/29 15:44 */ @WebServlet(name = "updateServlet") public class updateServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8"); String id = request.getParameter("id"); String name = request.getParameter("name"); String sex = request.getParameter("sex"); String specialty = request.getParameter("specialty"); String grade = request.getParameter("grade"); Connection connection = DbConnect.getConnection(); String sql = "UPDATE STUDENT SET name=? , sex=? , specialty=? , grade=? where id=?"; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setInt(5, Integer.parseInt(id)); preparedStatement.setString(1, name); preparedStatement.setString(2, sex); preparedStatement.setString(3, specialty); preparedStatement.setString(4, grade); int i = preparedStatement.executeUpdate(); HttpSession httpSession = request.getSession(); if (i == 1) { String selectAll = "SELECT * FROM STUDENT"; preparedStatement = connection.prepareStatement(selectAll); resultSet = preparedStatement.executeQuery(); httpSession.setMaxInactiveInterval(7200); httpSession.setAttribute("resultSet", resultSet); response.sendRedirect("loginAction.jsp"); } else { httpSession.setAttribute("message", "修改失败!"); response.sendRedirect("error.jsp"); } } catch (SQLException e) { e.printStackTrace(); } } }
添加学生信息jsp:
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2019/3/28 Time: 14:50 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %> <html> <head> <title>添加学生信息</title> <link rel="stylesheet" type="text/css" href="css/table.css"> </head> <body> <form action="/addServlet" method="post"> <center> <table class="gridtable"> <tr> <td align="center" colspan="2">添加学生信息</td> </tr> <tr> <td>姓名</td> <td><input type="text" name="name"></td> </tr> <tr> <td>性别</td> <td> <input type="radio" name="sex" value="男" checked="checked">男 <input type="radio" name="sex" value="女">女 </td> </tr> <tr> <td>专业</td> <td><input type="text" name="specialty"></td> </tr> <tr> <td>年级</td> <td><select name="grade"> <option value="大一">大一</option> <option value="大二">大二</option> <option value="大三">大三</option> <option value="大四">大四</option> </select></td> </tr> <tr> <td align="center" colspan="2"><input type="submit" value="添加"></td> </tr> </table> </center> </form> </body> </html>
添加学生信息servlet:
package servlet; import db.DbConnect; import entity.Student; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * @ClassName: ${NAME} * @Author: Leo * @Description: * @Date: 2019/3/28 20:24 */ public class addServlet extends javax.servlet.http.HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); String name = request.getParameter("name"); String sex = request.getParameter("sex"); String specialty = request.getParameter("specialty"); String grade = request.getParameter("grade"); Student student = new Student(name, sex, specialty, grade); Connection connection = DbConnect.getConnection(); String sql = "INSERT INTO student(name,sex,specialty,grade) values(?,?,?,?)"; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, student.getName()); preparedStatement.setString(2, student.getSex()); preparedStatement.setString(3, student.getSpecialty()); preparedStatement.setString(4, student.getGrade()); int i = preparedStatement.executeUpdate(); HttpSession httpSession = request.getSession(); if (i == 1) { String selectSql = "SELECT * FROM STUDENT"; preparedStatement = connection.prepareStatement(selectSql); resultSet = preparedStatement.executeQuery(); httpSession.setMaxInactiveInterval(7200); httpSession.setAttribute("resultSet", resultSet); response.sendRedirect("loginAction.jsp"); } else { httpSession.setAttribute("message", "添加失败!"); response.sendRedirect("error.jsp"); } } catch (SQLException e) { e.printStackTrace(); } } }
删除学生信息servlet:
package servlet; import db.DbConnect; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * @ClassName: ${NAME} * @Author: Leo * @Description: * @Date: 2019/3/29 16:05 */ @WebServlet(name = "deleteServlet") public class deleteServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8"); String id = request.getParameter("id"); String sql = "DELETE FROM STUDENT WHERE ID=?"; Connection connection = DbConnect.getConnection(); PreparedStatement preparedStatement = null; ResultSet resultSet = null; HttpSession httpSession = request.getSession(); try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setInt(1, Integer.parseInt(id)); int i = preparedStatement.executeUpdate(); if (i == 1) { String select = "SELECT * FROM STUDENT"; preparedStatement = connection.prepareStatement(select); resultSet = preparedStatement.executeQuery(); httpSession.setMaxInactiveInterval(7200); httpSession.setAttribute("resultSet", resultSet); response.sendRedirect("loginAction.jsp"); } else { httpSession.setAttribute("message", "删除失败!"); response.sendRedirect("error.jsp"); } } catch (SQLException e) { e.printStackTrace(); } } }
错误页面:
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2019/3/28 Time: 15:18 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %> <html> <head> <title>Error</title> </head> <body> <% String message = (String) session.getAttribute("message"); out.print(message); %> </body> </html>
web.xml
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>addServlet</servlet-name> <servlet-class>servlet.addServlet</servlet-class> </servlet> <servlet> <servlet-name>loginServer</servlet-name> <servlet-class>servlet.loginServer</servlet-class> </servlet> <servlet> <servlet-name>selectServlet</servlet-name> <servlet-class>servlet.selectServlet</servlet-class> </servlet> <servlet> <servlet-name>updateServlet</servlet-name> <servlet-class>servlet.updateServlet</servlet-class> </servlet> <servlet> <servlet-name>deleteServlet</servlet-name> <servlet-class>servlet.deleteServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>addServlet</servlet-name> <url-pattern>/addServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>loginServer</servlet-name> <url-pattern>/loginServer</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>selectServlet</servlet-name> <url-pattern>/selectServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>updateServlet</servlet-name> <url-pattern>/updateServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>deleteServlet</servlet-name> <url-pattern>/deleteServlet</url-pattern> </servlet-mapping> </web-app>
-
JavaWEB课程
2020-02-08 09:25:01本套课程讲解JavaWEB编程: 1、讲解HTML、CSS、JavaScript、DOM和BOM编程 2、讲解Servlet技术 3、讲解JSP技术 4、讲解ajax和json技术 5、讲解过滤器和监听器技术 6、讲解数据库的多表操作,事务... -
教务管理系统JavaWeb项目
2018-03-25 16:35:06刚学完javaweb,做个项目练手与巩固所学的知识,同时分享自己写的这个教务管理系统,同样也是为自己记下笔记。为以后复习有帮助。该系统没有用到框架的知识,一共花了7天写出来。所以非常适合javaweb初学者教务管理... -
JavaWeb【404,The origin server did not find a current representation for the target resource···...
2018-11-24 21:57:10JavaWeb【status:404,The origin server did not find a current representation for the target resource or is not willing to disclose that one exists. 】 本人是新手小白,在刚开始学JavaWeb开发的时候遇到... -
javaweb04_JSP(Java Server Pages)
2020-09-21 10:30:26javaweb04_JSP(Java Server Pages) JSP入门: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.util.*"%> <!DOCTYPE html> <html> <... -
JavaWeb购物车
2018-06-14 10:05:22JavaWeb中Servlet连接MySQL数据库的关于购物车的项目实现 -
JavaWeb之JavaWeb认识
2018-10-07 23:49:00一、JavaWeb的概念 Java Web应用可以包含如下内容: -Servlet -JSP -实用类 -静态文档如HTML、图片等 -描述Web应用的信息(web.xml) 二、JavaWeb理解 Servlet容器为JavaWeb应用提供运行时环境,它负责管理Servlet和... -
JavaWeb.pdf
2019-08-25 13:45:46JavaWeb pdf -
JavaWEB综合实战
2019-11-08 12:48:56JavaWEB综合训练、主要使用Servlet、JSP、request、response、cookie、session、filter、listener、定时器等完成原生态的购物网站 -
JavaWeb笔记
2018-06-11 10:23:30传智播客最全面的javaweb笔记,适合初学者小白,前七天是广陵散,后面是崔稀饭 -
JavaWeb重修(一)【JavaWeb入门】
2018-03-14 21:17:07废话不多说,这个系列是在我自己对JavaWeb的理解的基础上,结合之前JavaWeb开发的经验的总结。 在学习的过程中我会把我的源代码分享出来,喜欢的话记得给星星哦~: #手里目前确实有几个好一点的项目,不过实在是... -
JavaWEB项目实战
2020-04-11 10:36:36使用JavaWEB技术完成整个平台后台开发。 前端: html、css、JavaScript easyUI前端框架、jQuery 服务器:tomcat:9.0.33... -
JavaWeb入门登录注册系统
2018-07-31 04:37:20JavaWeb入门先从登录注册系统开始做起. 我的这个入门教程特别简单大家按步骤做就行一定没有问题的!源码在下面一个字不少大家认真仔细学 ...这些东西都是百度可以查到...3、建立一个JavaWeb项目,随便在一个项目... -
JavaWeb是什么?总结一下JavaWeb的体系
2018-10-23 10:12:56JavaWeb是什么?通过最近在尚硅谷上学习,分享一下Java WEB前言JavaWeb的技术体系登录页面的开发涉及的技术知识点HTML是什么?登录功能实现-环境的搭建涉及的技术知识点Web服务器Tomcat服务器的安装及配置在eclipse中... -
javaweb选课系统
2018-02-28 13:24:03javaweb选课系统,ssm框架 javaweb选课系统,ssm框架 javaweb选课系统,ssm框架 -
javaweb项目实(含笔记与详细实现步骤)
2017-07-20 10:50:02javaweb项目实例,适合新手,超级详细,内含笔记与详细实现步骤 -
JavaWeb核心编程
2018-12-19 18:46:50本阶段Java视频教程涵盖JavaWEB 企业级开发所需的Servlet、JSP、MVC 设计模式、EL 表达式、JavaBean、国际化、Cookie和HttpSession、JavaMail等核心技术。并通过书城案例,巩固知识,提供开发能力 -
Javaweb 聊天室
2018-11-27 16:33:25Javaweb 聊天室 前言 java课程结束了之后,老师要求我们用java做一个关于聊天室的课程设计,于是我就想做一个web应用,在这里只是纯分享,如果想要源码的,可以在评论里说。 一、实验目的 做一个Javaweb聊天室... -
JavaWeb课程设计
2018-03-30 23:31:57JavaWeb课程设计
-
documentserver-linux-5.5.0.tgz
-
MFC开发简单聊天程序
-
跟我练内测小分队学习礼包
-
iphone4S维修原理图PCB位置图(PDF格式)
-
Python入门到项目直通车
-
PHP 字符串排序
-
【案例】BMusic 作者:Bingoo.rar
-
【数据分析-随到随学】Spark理论及实战
-
Scratch Desktop 3.9 字体放大版
-
AcWing算法基础课(1)
-
Redis数据库入门与使用
-
Qt and Qt Charts
-
mybatis-plus无法解析Date()问题
-
目标检测(Object Detection)
-
nfcPro_kgf_v6.exe
-
iphoneSE维修原理图PCB位置图(PDF格式)
-
【数据分析-随到随学】Hive详解
-
【数据分析实战训练营】Hive详解
-
魅蓝3维修原理图PCB位置图(PDF格式)
-
JavaEE框架(Maven+SSM)全程实战开发教程(源码+讲义)