redis实现从数据库获取数据添加到html页面上

1.逻辑
需要导入的jar包
1.jquery
js包
(1) jquery-3.3.1.js
(2)jquery-3.3.1.min.js
2.jedis 的jar包
(1)jedis-2.7.0.jar
(2)commons-pool2-2.3.jar
3.json的jar包
(1)jackson-annotations-2.2.3.jar
(2)ackson-core-2.2.3.jar
(3)jackson-databind-2.2.3.jar
4.mysql的jar包
(1)mysql-connector-java-5.1.18-bin.jar
5.JDBCTemplate的jar包
(1) commons-logging-1.1.1jar
(2) spring-beans-4.2.1.RELEASE.jar
(3) spring-core-4.2.1.RELEASE.jar
(4) spring-jdbc-4.2.1.RELEASE.jar
(5) spring-tx-4.2.1.RELEASE.jar
6.durid的jar包
(1)druid-1.0.9.jar
7.jstl的jar包
(1)javax.servlet.jsp.jstl.jar
(2)jstl-impl.jar
8.BeanUtils工具类,简化数据封装(一般放在domain、entity这类包里面)
(1)commons-beanutils-1.8.3.jar
作用:
1.用于封装JavaBean的(在本处的redis未用到)2.可基于属性的
举例

 // 0.设置编码格式
request.setCharacterEncoding("utf-8");
1.获取所有参数
Map<String, String[]> map = request.getParameterMap();
// 2.创建User对象
User loginUser = new User();
// 3.使用BeanUtils封装
try {
    org.apache.commons.beanutils.BeanUtils.populate(loginUser,map);
} catch (IllegalAccessException e) {
    e.printStackTrace();
} catch (InvocationTargetException e) {
    e.printStackTrace();
}

// 4.创建UserDao对象
UserDao userDao = new UserDao();
// 5.调用login方法,返回user信息
User user = userDao.login(loginUser);

// 6.登录失败
if(user == null){
    // 转发
    request.getRequestDispatcher("/failServlet").forward(request,response);
}else {
    // 7.登录成功
    // 存储数据
    request.setAttribute("user",user);
    // 转发
    request.getRequestDispatcher("/successServlet").forward(request,response);
}

// 说明属性的区别(标准的java类JavaBean)
private String gender;   // 测试BeanUtils用

public String getHehe() {  // 测试BeanUtils属性用
    return gender;
}
**

## *BeanUtilsTest*

**
public void setHehe(String gender) {  // 属性hehe操作成员变量gender的值 测试BeanUtils属性用
    this.gender = gender;
}
...


BeanUtils.setProperty(user,"hehe","male");
System.out.println(user); // User{id=0, username='null', password='null', gender='male'}
String gender = BeanUtils.getProperty(user, "hehe");
System.out.println(gender); // male












![在这里插入图片描述](http

s://img-blog.csdnimg.cn/20200301110922633.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzE4NDAxNw==,size_16,color_FFFFFF,t_70)

1.1.不使用redis(慢)
index.html——>ProvinceServlet——>ProvinceService(操作Dao的接口)+ProvinceServiceImpl(操作Dao的实现类)——>ProvinceDao(操作数据库的接口)+ProvinceDao(操作数据库的实现类)——>DataBase(关系型数据库)
在这里插入图片描述
1.2.使用redis(缓存)
index.html——>ProvinceServlet——>ProvinceService(操作Dao的接口)+ProvinceServiceImpl(操作Dao的实现类)——>ProvinceDao(操作数据库的接口)+ProvinceDao(操作数据库的实现类)——>DataBase(关系型数据库)
ProvinceService(操作Dao的接口)+ProvinceServiceImpl(操作Dao的实现类)——>redis

2.可能的错误
1.bug错误:操作数据库成功,但出现null。Province类可能有误

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值