servlet以及用户登录简单案例
servlet是一个动态的web开发技术,是一个类,运行在服务器端的一个java小程序。编写一个servlet的步骤:1.编写一个类(类名自己起)要求:a.继承HttpServletb.重写doGet或者doPost方法2.编写配置文件(WEB-INF/web.xml)要求:a.注册servlet```<servlet>...
·
servlet
是一个动态的web开发技术,是一个类,运行在服务器端的一个java小程序。
编写一个servlet的步骤:
1.编写一个类(类名自己起)
要求:a.继承HttpServlet
b.重写doGet或者doPost方法
2.编写配置文件(WEB-INF/web.xml)
要求:a.注册servlet
```
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.web.servlet.LoginServlet</servlet-class>
</servlet>
```
b.绑定路径
```
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
```
3.访问
http://主机:端口号/项目名/路径
用户登录的简单案例
步骤:1.先建立数据库和表,并在表中插入一条数据
create database day09;
use day09;
create table user(
id int primary key auto_increment,
username varchar(20),
password varchar(20),
email varchar(20),
name varchar(20),
sex varchar(10),
birthday date,
hobby varchar(50)
);
insert into user values (null,'tom','123','tom@126.com','tom','1','1988-01-01',null);
2.创建动态web项目
3.将页面拷进项目中的WebContent文件夹下
需要给用户名和密码添加name属性
修改表单的action属性
action=“http://localhost/day09/login”
添加method属性
method=“post”
4.导入jar包
dbutils、c3p0
5.导入工具类和配置文件
datasourceUtils、c3p0-config.xml
6.创建servlet
接收username和password
//0.设置编码
response.setContentType("text/html;charset=utf-8");
//1.接收用户名和密码
String username=request.getParameter("username");
String password=request.getParameter("password");
调用service层(UserService)完成登录操作
User user=null;
try {
user=new UserService().login(username,password);
} catch (SQLException e) {
// TODO Auto-generated catch block
}
//3.判断user是否为空
if(user==null) {
//3.1若为空,写“用户名和密码不匹配”(没有在数据库中找到相应的用户)
response.getWriter().print("用户名与密码不匹配,3秒之后跳转");
//案例二:定时跳转
response.setHeader("refersh","3;url=/day09/login.htm");
}else {
//3.2若不为空,写"XXX:欢迎回来"
response.getWriter().print(user.getUsername()+":欢迎回来");
}
}
7.UserService
public User login(String username,String password) throws SQLException {
UserDao dao =new UserDao();
return dao.getUserByUsernameAndPassword(username, password);
}
8,dao
public User getUserByUsernameAndPassword(String username,String password) throws SQLException {
//创建一个与数据库关联的queryrunner对象(dbutils中的一个方法,封装了jdbc)
QueryRunner qr=new QueryRunner(DataSourceUtils.getDataSource());
//编写sql
String sql="select *form user where username=? and password=?";
Object [] params = {username,password};
//执行sql(将结果的第一行记录作为javabean对象返回)
User user=qr.query(sql, new BeanHandler<>(User.class),params);
return user;
}
更多推荐
已为社区贡献1条内容
所有评论(0)