简单servlet调用dao层完整步骤
导入包lib(文件名称)
目录结构:web下:views、web-inf、index.jsp
views下各种jsp文件和js(里面放封装好的jquery包)
js下:jquery包(js文件后缀)
web-inf目录下:classes(编译输出路径)、lib、 web.xml
首先编写index.jsp文件
<form method="post" action="/touhou/isLogin">
<input type="text" required name="admin" ><br/><br/>
<input type="password" required name="password" ><br/><br/>
<span id="errorMessage"> ${error}</span><br/><br/>
<input type="submit" value="LinkStart">
</form>
接着响应表单提交的servlet “isLogin”
package com.aaa.servlet; import com.aaa.dao.IUserDAO;
import com.aaa.dao.impl.UserDAOImpl; 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 java.io.IOException;
import java.util.Map; @WebServlet("/isLogin")
public class IsLoginServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//设置编码格式为UTF-8
req.setCharacterEncoding("UTF-8");
//将表单中获取到的元素提取出来
String admin=req.getParameter("admin");
String password=req.getParameter("password");
//将这些元素引入dao层进行比对
IUserDAO userDAO = new UserDAOImpl();
Map<String, Object> map = userDAO.isLogin(admin, password);
//查看比对结果并进行相应后续处理
if(map!=null){
//map不为空时设置map属性值并请求转发到登陆成功的主页
req.setAttribute("map",map);
System.out.println(map);
req.getRequestDispatcher("/views/loginSuccess.jsp").forward(req,resp);
}else {
//失败时将错误信息传递给
req.setAttribute("error","账号或者密码不正确");
req.getRequestDispatcher("/index.jsp").forward(req,resp);
} }
}
当然,最后判断是否成功
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: //
Time: :
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%--进行list循环时需要用到的--%>
<html>
<head>
<title>Title</title>
</head>
<%--添加jquery代码实现--%>
<script src="js/jquery-2.1.0.js"></script>
<body>
<span>欢迎你,可爱的${map.mininame}</span>
</body>
</html>
简单servlet调用dao层完整步骤的更多相关文章
- 代码分层之模拟servlet调用dao
一:代码分层 com.guangming.dao 存放dao相关的类型 例如 StudentDAOImpl 处理 数据库的链接 存取数据com.guangming.servlet 存放servlet相 ...
- controller层负责创建类传递类给service;service层负责逻辑编写调用dao层 将编写后的类传递到dao层,保证事务的正确性;dao层负责数据的持久化
controller层负责创建类传递类给service:service层负责逻辑编写调用dao层 将编写后的类传递到dao层,保证事务的正确性:dao层负责数据的持久化
- SSH 项目中 用Hibernate底层 简单的封装DAO层
废话不多少了,主要是使用hibernate的查询方法,自己封装了DAO层,供service来方便使用. 首先:必须要继承的 public class CommonDao extends Hiberna ...
- springboot 项目中在普通类中调用dao层的mapper 出现空指针异常
项目中我遇到同样的问题 特记载一下 有两种方式 一. 该类使用@Component注解 添加一个本类类型的静态字段 创建一个初始化方法,贴上@PostConstruct 标签,用于注入bean 创建方 ...
- Spring main方法中怎么调用Dao层和Service层的方法
在web环境中,一般serviceImpl中的dao之类的数据库连接都由容器启动的时候创建好了,不会报错.但是在main中,没有这个环境,所以需要获取环境: ApplicationContext ct ...
- Spring 控制器层如何调用DAO层
1.写上注解 @Autowired 2.声明一个变量 private UserDao userDao; 3.注意!Spring里面数据库对象操作类不需要实例化就能调用
- 【service调用dao层传参的三种方式】
第一种方案:默认数组角标: service Public User selectUser(String name,String area); mapper: <select id="s ...
- Servlet里面一调用Dao里的某个方法
背景: 这几天,由于项目集成的需要,我要在doFilter里调用dao层里的某些方法,可是总之报空指针,只要调用那个dao方法,就报错误.很是纳闷,网上查找了各种原因,终于让我给突破了,看来还是Jav ...
- jsp+servlet+javaBean+Dao
一.Servlet程序各模块介绍1.JSP 用于显示.收集数据的部分.2.Servlet 用于验证数据.实例化JavaBean.调用DAO连接数据库.控制页面跳转3.DAO 用于连接数据库及进行数据库 ...
随机推荐
- 精彩的linux shell 命令
1. Star Wars (telnet) telnet是基于Telnet协议的远程登录客户端程序,经常用来远程登录服务器.除此还可以用它来观看星球大战: telnet towel.blinken ...
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 G. Xor
There is a tree with nn nodes. For each node, there is an integer value a_iai, (1 \le a_i \le 1,0 ...
- 【DEBUG】不能将参数 1 从“CString”转换为“const char *”
1. 在vc6.0下用CString str;num = atoi(str);就可以顺利取到num: 但是同样代码拿到vs2008就报错,error C2664: "atoi": ...
- oracle 内部机制-DTRACE
Oracle SQL Tuning and CBO Internals: Based Optimizer with CBO Internals and SQL Tuning Optimization ...
- HDU 3473
分析可知,最优的x应该在区间中的数排列后最中间的地方选择.由于区间的数个数有奇偶之分,于是当奇数个时,就是中位数了.偶数个时,就是排列后中间两数区间的任意一个. 可以应用划分树求得前半部分,树状数组统 ...
- NPM 3 Beta为Windows用户带来利好消息
本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2015/06/angular-2-react-native-roadmap 近日,np ...
- <LeetCode OJ> 268. Missing Number
268. Missing Number Total Accepted: 31740 Total Submissions: 83547 Difficulty: Medium Given an array ...
- input子系统驱动学习之中的一个
刚開始学习linux这门课就被分配编写一个设备的input子系统驱动.这对我的确有点困难.只是实际的操作中发现困难远比我想象的要大的多.本以为依照老师课上的步骤就行非常快的完毕这项任务.后来发 ...
- Oracle数据库软件标准版的一个限制:仅仅能用一个rman channel
Oracle数据库软件标准版的一个限制:仅仅能用一个rman channel Restrictions in "Standard Edition" Rman channel all ...
- 小米手机 js 脚本取src为空的适配问题
今天測试提上来一个问题 我android webview 中运行了一段js脚本.去替换原来的图片.可是小米手机上竟然没起作用 花了一个中午的午休看问题 贴出来帮助下遇到相同的问题的朋友吧.我百度了半天 ...