- 浏览: 195172 次
- 性别:
- 来自: 包头
最新评论
-
chengeng:
图片没有显示。
登录系统-基于struts2+spring+hibernate分层架构 -
chengeng:
不知为什么,图片没有显示出来。
登录系统-基于struts2+spring+hibernateJPA分层架构 -
rdz09:
解析得很详细,不错
从头学起:struts2(1) -
zxd543:
图怎么都看不见呢?
登录系统-基于struts2+spring+hibernate分层架构 -
huweijie:
...
JAVA语言程序设计-第九章 异常处理
1. 新建一个web项目,在项目中添加两个包:JavaBean和Servlet。
2. 在JavaBean包中新建是三个java类:DB_Conn.java、DB_User.java和User.java。
DB_Conn.java文件用于数据库连接,加入如下代码:
package JavaBean;
import java.io.PrintWriter;
import java.sql.*;
public class DB_Conn {
private String driverName="com.mysql.jdbc.Driver"; //驱动程序名
private String userName="root"; //数据库用户名
private String userPwd="123456"; //密码
private String url="jdbc:mysql://localhost:3306/book"; //连接字符串
private Connection conn=null; //数据库连接对象
public Statement sm=null; //数据库语句对象
private PrintWriter out = null;
// 建立数据库连接
public void ConnectDB(){
try {
Class.forName(driverName).newInstance();
conn=DriverManager.getConnection(url,userName,userPwd); //获得数据库连接
sm=conn.createStatement();
} catch(Exception e) {
out.print("数据库连接失败!");
}
}
public void CloseDB(){
try {
if (sm != null) {
sm.close();
}
conn.close();
} catch (SQLException SqlE) {
out.print("数据库关闭失败!");
}
}
}
本实验使用的是mysql数据库,数据库名称:book,数据表名称:admin,字段名:u_id,u_Name,u_Pass。
DB_User.java文件用于数据库访问,结果保存到对象中,加入如下代码:
package JavaBean;
import java.sql.ResultSet;
import java.sql.SQLException;
public class DB_User {
//创建公用数据库连接类对象
DB_Conn db_conn=new DB_Conn();
//通过用户名称获取用户信息
public User get(String username, String password) {
db_conn.ConnectDB();
ResultSet rs = null;
try {
String sql = "select * from admin where u_Name ='"
+ username + "' and u_Pass='" + password + "'";
rs = db_conn.sm.executeQuery(sql); // 执行sql语句
User user = null;
if (rs.next()) {
user = new User();
user.setUsername(username);
user.setPassword(rs.getString("u_Pass"));
return user;
}
return user;
}
catch (SQLException SqlE) {
return null;
}
catch (Exception E) {
return null;
}
finally {
// 关闭连接,释放数据库资源:
db_conn.CloseDB();
}
}
}
User.java文件用于关系数据库到对象的映射,加入如下代码:
package JavaBean;
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;
}
}
3. 在Servlet包中新建servlet类:LoginServlet.java,在步骤3中选中“将信息添加到部署描述符”选项。如图:
打开web.xml文件,可以看到如下关于servlet的部署设置:
<servlet>
<servlet-name>LogServlet</servlet-name>
<servlet-class>Servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LogServlet</servlet-name>
<url-pattern>/LoginServlet</url-pattern>
</servlet-mapping>
在LoginServlet.java中加入如下代码:
import JavaBean.DB_User;
import JavaBean.User;
/**
*
* @author skylzy
*/
public class LoginServlet extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
String UserName = request.getParameter("logname");
String Password = request.getParameter("logpwd");
DB_User dbuser = new DB_User();
User user = dbuser.get(UserName, Password);
if (user != null) {
request.getSession(true).setAttribute("username", UserName);
try {
request.getRequestDispatcher("index.jsp").forward(request,response);
}
catch (Throwable t) {
getServletContext().log(t.getMessage());
}
} else {
request.setAttribute("error", "用户名与密码不匹配,登录失败,请重试!");
try {
request.getRequestDispatcher("Login.jsp").forward(request, response);
}
catch (Throwable t) {
getServletContext().log(t.getMessage());
}
}
}
4.创建如下两个页面:
login.jsp
<%@ page pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=gb2312" %>
<% request.setCharacterEncoding("gb2312"); %>
<%@ page language="java" %>
<html>
<head><title>登录网页</title></head>
<body>
<form method="POST" action="./LoginServlet">
<table >
<tr>
<td width="890" align="left" colspan="2">
<b><font size="5">系统登录</font></b>
<hr>
</td>
</tr>
<% if (request.getAttribute("error") != null){ %>
<tr>
<td width=100% align=center colspan=4 height=36>
<font color=red><b><%=request.getAttribute("error")%></b></font>
</td>
</tr>
<%
}
%>
<tr>
<td width="75" align="center">
<p align="right">账号:</p>
</td>
<td width="809" align="center">
<p align="left">
<input type="text" name="logname" size="20"></td>
</tr>
<tr>
<td width="75" align="center">
<p align="right">密码:</p>
</td>
<td width="809" align="center">
<p align="left">
<input type="password" name="logpwd" size="20">
<input type="submit" value="登录" name="loginButton"></td>
</tr>
</table>
</form>
</body>
</html>
accesspage.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录成功</title>
</head>
<body>
<h1>Hello
<% if (request.getAttribute("username") != null){ %>
<font color=red>
<b>
<%=request.getAttribute("username")%>
</b>
</font>
<%
}
%>
!</h1>
</body>
</html>
5.生成项目,并运行http://localhost:8080/login/login.jsp
发表评论
-
确认对话框ConfirmDialog和选择对话框OptionDialog:猜数游戏
2012-04-07 18:22 30856确认对话框ConfirmDialog给出提示信息和若干 ... -
输入对话框showInputDialog综合应用:猜数游戏
2012-04-06 17:13 7183Java输入对话框共有6个重载方法showInputDi ... -
消息对话框MessageDialog综合应用:九九表
2012-04-01 23:39 22515java信息对话框:MessageDialog是一个非常 ... -
从头学起:struts2(1)
2011-12-15 23:10 1304从头学起:struts2(1)从页面跳转说起:先看一个例子,使 ... -
登录系统-基于struts2+spring+hibernateJPA分层架构
2011-12-08 21:27 18011、新建一个mysql数据库,并新建连接,数据库结构如下图所示 ... -
登录系统-基于struts2+spring+hibernate分层架构
2011-11-29 21:43 34061、创建mysql数据库,结构如下图所示: 2、 ... -
依赖注入入门-从dao到service
2011-11-23 18:30 8121在分层的web应用系统中,通常将数据操作分为dao数据层和se ... -
登录系统-基于struts2+hibernate分层架构
2011-11-21 23:07 296本实验使用struts+hibernate分层结构,目的是可以 ... -
登录系统-基于servlet+hibernate分层架构
2011-11-21 12:13 3112本实验使用servlet+hibernate分层结构,目的是 ... -
登录系统-基于struts2的分层架构
2011-11-19 21:48 26301.下载支持Netbeans7.0的Struts2插件,在工具 ... -
登录系统-基于servlet+hibernate
2011-11-19 19:01 41371.新建一个java web项目,在步骤4中选择Hiber ... -
基于NetBeans7.0的Hibernate编程入门
2011-11-19 11:47 1446基于NetBeans7.0的 Hebernate入门 ... -
实验13 数据库的连接:JDBC*
2011-03-28 22:02 1222一、实验目的 了解JDBC核心API,利用JDBC核心API ... -
实验14 JSP与Servlet技术*
2011-03-28 22:01 1208一、实验目的 1. 理解JSP元素的概念 2. 理解JSP ... -
实验12 网络编程
2011-03-28 21:59 1196一、实验目的 1. 掌握InetAddress类的使用。 2 ... -
实验11 线程
2011-03-28 21:59 850一、实验目的 1. 线程 ... -
实验10 流与文件
2011-03-28 21:58 924一、实验目的 1. 理解数据流的概念 2. 理解Java流的 ... -
实验 9 综合练习
2011-03-28 21:57 729一、实验目的 将所学知识进行综合运用,模仿设计具有实 ... -
实验 8 图形与多媒体处理
2011-03-28 21:56 861一、实验目的 熟悉图形、图像的使用方法,理解计算机动画 ... -
实验 7 建立图形用户界面
2011-03-28 21:54 1354一、实验目的 了解图形用户界面基本组件窗口、按钮、文本 ...
相关推荐
基于jsp-servlet的客户管理系统CRM基于jsp-servlet的客户管理系统CRM 基于jsp-servlet的客户管理系统CRM基于jsp-servlet的客户管理系统CRM 基于jsp-servlet的客户管理系统CRM基于jsp-servlet的客户管理系统CRM 基于...
管理系统系列--基于servlet+jsp+mysql+MVC模式的学生选课管理系统
Web大作业-基于servlet的简单的用户管理系统
一个用servlet完成的商场系统,购物模块相当完善
基于servlet的学生信息管理系统 主要功能 基本功能:登录、退出、注册 学生信息管理:根据学号查询、学生列表、添加学生、学生信息修改、学生信息删除、学生信息导出 教师信息管理:根据姓名查询、教师列表查询、...
基于 Servlet+jsp+mysql 开发 javaWeb 学生宿舍管理系统基于 Servlet+jsp+mysql 开发 javaWeb 学生宿舍管理系统基于 Servlet+jsp+mysql 开发 javaWeb 学生宿舍管理系统基于 Servlet+jsp+mysql 开发 javaWeb 学生宿舍...
管理系统系列--图书管理系统---基于Jsp+Servlet实现
基于Servlet公司人事管理系统的设计与实现——程序
毕设&课设&项目&实训-基于Servlet Tomcat Mysql 的全栈项目,JavaEE课程设计,Javaweb课程设计 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!该...
基于Servlet的商品购物网站
项目所涉及的技术:java基础,jsp,servlet,tomcat,sqlserver 项目采用的开发模式:MVC 项目描述:本系统是基于城市社区的医疗管理系统。
基于Servlet框架的管理系统 _简洁版_ ; 实现登录 、 注册 、 增 、 删 、 改 、 查 ; 可继续完善增加前端、校验、其他功能等; 可作为 Servlet项目 开发练习基础模型; 课程设计、 毕业设计 开发基础; 任何复杂的...
基于Servlet银行柜员操作系统的设计和实现——程序
基于Servlet的物流管理系统设计与实现——程序
JavaWeb课设-基于Jsp+Servlet+MVC社区互助系统源码(含sql数据库).zipJavaWeb课设-基于Jsp+Servlet+MVC社区互助系统源码(含sql数据库).zipJavaWeb课设-基于Jsp+Servlet+MVC社区互助系统源码(含sql数据库).zipJavaWeb...
管理系统系列--基于JSP+Servlet的学生管理系统
基于 Servlet 开发的房屋发布系统基于 Servlet 开发的房屋发布系统 基于 Servlet 开发的房屋发布系统基于 Servlet 开发的房屋发布系统 基于 Servlet 开发的房屋发布系统基于 Servlet 开发的房屋发布系统 基于 ...
管理系统系列--基于jsp+servlet+javaBean的图书管理系统
基于Servlet Filter的访问控制过滤器插件,汪克炎,龙毅宏,对于部署在互联网上的J2EE Web应用系统,用户的安全访问是至关重要的。本文介绍使用Servlet Filter技术设计一种可插入的、可扩展的、对��
基于java+servlet+mysql学生信息管理系统-期末大作业基于java+servlet+mysql学生信息管理系统-期末大作业基于java+servlet+mysql学生信息管理系统-期末大作业基于java+servlet+mysql学生信息管理系统-期末大作业基于...