2020年5月29日星期五

页面查询案例(使用redis数据库)

页面查询案例(使用redis数据库)


需求:

1.提供一个index.html页面,页面中有个省份,下拉列表
2.当页面加载完成时,发送ajax请求。加载所有省份

 

前期项目初步搭建:

index.html

$(function(){	$.get("url",{},funtion(data){	//url-查询servlet路径,{}不要参数,data为返回的数据,填充到省份列表中	//因为有查询数据库因此有三层架构service(findProvinceServlet)-service(ProvinceService)-dao(ProviniceDao)查询数据库	})})

 

ProvinceDao

1.声明JDBCTemplate,查询数据库
2.返回查询的值(List集合)

 

ProvinceService

1.声明dao
2.通过Dao返回查询所有的结果集

 

findProvinceServlet

1.调用service完成查询,返回List<Province>
2.将数据返回,因为采用的是Ajax请求,因此需要将数据序列化Json
3.响应

 

整体代码:

index.html

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="js/jquery-3.3.1.min.js"></script> <script>  $(function () {   $.get("provinceServlet",{},function (data) {    var province=$("#province");    $(data).each(function () {     var option="<option name='"+this.id+"'>"+this.name+"</option>";     province.append(option);    });   });  }); </script></head><body> <select id="province">  <option>---请选择省份---</option> </select></body></html>

 

ProvinceDao.java

package cn.stormtides.dao.impl;import cn.stormtides.dao.ProvinceDao;import cn.stormtides.domain.Province;import cn.stormtides.util.JDBCUtils;import org.springframework.jdbc.core.BeanPropertyRowMapper;import org.springframework.jdbc.core.JdbcTemplate;import java.util.List;public class ProvinceDaoImpl implements ProvinceDao { //声明成员变量 private JdbcTemplate template=new JdbcTemplate(JDBCUtils.getDataSource()); @Override public List<Province> findAll() {  String sql="select * from province";  List<Province> list = template.query(sql, new BeanPropertyRowMapper<>(Province.class));  return list; }}

 

ProvinceService.java

package cn.stormtides.service.impl;import cn.stormtides.dao.ProvinceDao;import cn.stormtides.dao.impl.ProvinceDaoImpl;import cn.stormtides.domain.Province;import cn.stormtides.jedis.util.JedisPoolUtils;import cn.stormtides.service.ProvinceService;import com.faster

  

findProvinceServlet.java

package cn.stormtides.web.servlet;import cn.stormtides.domain.Province;import cn.stormtides.service.ProvinceService;import cn.stormtides.service.impl.ProvinceServiceImpl;import com.faster

  

 

   完整代码