当前位置: 首页 > news >正文

做高端网站的网络公司创建公司网站教程

做高端网站的网络公司,创建公司网站教程,企业的网站公告怎么制作,上海网站开发一对一培训价格一 概述 1 原理 根据用户传入的条件进行数据的筛选查询#xff0c;最后将结果放回给用户#xff0c;例如对员工的姓名与工资范围进行筛选查询 // 查询所有员工 SELECT * FROM employee // 模糊查询员工名称 SELECT * FROM employee WHERE name LIKE %黄% // 查询工资为8000…一 概述 1 原理 根据用户传入的条件进行数据的筛选查询最后将结果放回给用户例如对员工的姓名与工资范围进行筛选查询 // 查询所有员工 SELECT * FROM employee // 模糊查询员工名称 SELECT * FROM employee WHERE name LIKE %黄% // 查询工资为8000的员工 SELECT * FROM employee WHERE salary8000 // 查询工资在8000-9000范围内的员工包含 SELECT * FROM employee WHERE salary 8000 AND salary 9000 // 模糊查询员工名称的同时对工资范围进行限定 SELECT * FROM employee WHERE name LIKE %黄% AND salary 8000 AND salary 9000SELECT FROM employee 这部分SQL是固定的只是WHERE子句部分在变动这取决于用户在页面传递的查询参数根据用户查询传递的参数拼接WHERE条件这就是过滤查询的底层原理。   想实现上述需求应定义一个类封装用户传递到后台的请求参数使用 MyBaits的动态SQL 根据用户传递的参数在Mapper XML中拼接对应的SQL 2 数据封装 – EmployeeQueryObject 过滤查询时请求可能会传递多个过滤条件的参数来查询对应的数据这些参数需在后台多个层次之间进行传递servlet – service – dao故将参数封装到指定的对象中便于参数传递   编写 EmployeeQueryObject 来封装过滤查询的参数。产品查询又想支持分页查询又想支持过滤查询所以使用 EmployeeQueryObject 来继承 QueryObject既可以封装分页查询的参数又可以封装过滤查询的参数。 // EmployeeQueryObject Setter Getter public class EmployeeQueryObject extends QueryObject{private String employeeName;private Double minSalary;//小的区间值private Double maxSalary;//大的区间值 }二 Mybatis动态Sql 1 if 标签 – 单条件判断 // 语法 if testboolean 表达式/if// 例子 分页查询薪资于8000-9000范围内的姓名含employeeName的员工 !--分页查询:mybatis-- select idqueryForList resultTypeemployeeSELECT * from employeeif testemployeeName ! nulland employeeName LIKE CONCAT(%,#{employeeName},%)/ifif testminSalary ! null and salary gt;#{minSalary}/ifif testmaxSalary ! nulland salary lt;#{maxSalary}/ifLIMIT #{start},#{pageSize} /select当用户只模糊查询时 minSalary 与 maxSalary 没有传递此时需要使用where标签解决SQL语法问题 2 where 标签 – 去除多余and或or关键字 // 语法 where条件语句/where// 例子 select idqueryForList resultTypeEmployeeSELECT * from employeewhereif testemployeeName ! nulland employeeName LIKE CONCAT(%,#{employeeName},%)/ifif testminSalary ! null and salary gt;#{minSalary}/ifif testmaxSalary ! nulland salary lt;#{maxSalary}/if/whereLIMIT #{start},#{pageSize} /selectsql查询语句无where关键字则在语句前插入where若sql查询语句以and和or开头则用where替换掉 3 Mybatis转义符 lt; 小于 gt; 大于 amp; 与 apos; 单引号 quot; 双引号三 过滤实现 ① EmployeeQueryObject Setter Getter public class EmployeeQueryObject extends QueryObject{private String employeeName;private Double minSalary;//小的区间值private Double maxSalary;//大的区间值 }② EmployeeMapper.xml !--查询总条数--select idqueryForCount resultTypeintSELECT count(*) from employeeinclude refidwhere_sql/include/select!--分页查询:mybatis--select idqueryForList resultTypeEmployeeSELECT * from employeeinclude refidwhere_sql/includeLIMIT #{start},#{pageSize}/select!--封装sql片段--sql idwhere_sqlwhereif testemployeeName ! nulland employeeName LIKE CONCAT(%,#{employeeName},%)/ifif testminSalary ! null and salary gt;#{minSalary}/ifif testmaxSalary ! nulland salary lt;#{maxSalary}/if/where/sql③ list,jsp form action/employee methodpost姓名input typetext nameemployeeName value${qo.employeeName}工资input typetext nameminSalary value${qo.minSalary}-input typetext namemaxSalary value${qo.maxSalary}input typesubmit value查询④ EmployeeServlet // 获取过滤参数封装对应QO对象中 /*分页查询所有*/ private void list(HttpServletRequest req, HttpServletResponse resp) {try {/*客户端如果传入了当前页码和每页显示条数则设置给qo对象如果没有传入则使用默认值*/String currentPage req.getParameter(currentPage);String pageSize req.getParameter(pageSize);// 获取过滤参数String employeeName req.getParameter(employeeName);String minSalary req.getParameter(minSalary);String maxSalary req.getParameter(maxSalary);// 继承了qoqo有的他也有EmployeeQueryObject qonew EmployeeQueryObject();if (StringUtil.hasLength(currentPage)){qo.setCurrentPage(Integer.valueOf(currentPage));}if (StringUtil.hasLength(pageSize)){qo.setPageSize(Integer.valueOf(pageSize));}if (StringUtil.hasLength(employeeName)){qo.setEmployeeName(employeeName);}if (StringUtil.hasLength(minSalary)){qo.setMinSalary(new Double(minSalary));}if (StringUtil.hasLength(maxSalary)){qo.setMaxSalary(new Double(maxSalary));}//调用service分页查询的方法PageResultEmployee pageResult employeeService.queryByPage(qo);//将查询的结果存储到请求作用域req.setAttribute(pageResult,pageResult);// 查询条件回显req.setAttribute(qo,qo);//转发到列表页面req.getRequestDispatcher(/WEB-INF/views/employee/list.jsp).forward(req,resp);} catch (Exception e) {e.printStackTrace();} }
http://www.zqtcl.cn/news/920435/

相关文章:

  • 中国建设银行网站在哪上市cpa自己做网站
  • 网站建设服务支持jquery插件 wordpress
  • 最有效的100个营销方法seo工作室
  • wordpress o2o主题嘉兴网站优化联系方式
  • 网站建设最基础的是什么网站怎么做架构
  • 网站底部怎么修改网站服务器是干什么的
  • 网络营销是营销的网络化吗广州推广seo
  • 茌平做网站推广网站刷链接怎么做的
  • 东莞网站优化推广Wordpress的根目录在哪
  • 备案的网站建设书是什么意思跨境电商代运营公司十强
  • 网站建设的功能要求wordpress typo3
  • 深圳网站平台前程无忧招聘网
  • 个人业余做网站怎么弄wordpress子主题修改
  • 深圳营销型网站建设优化做虚拟币网站需要什么手续
  • 青海市建设局网站西安网站seo推广
  • 广元做网站的公司合肥市建设网
  • 如何做网站不被查如何做网站内部优化
  • 网站建设用什么框架好做网站需要用到哪些开发软件
  • 网站建设工程师待遇wordpress 工具插件
  • 网站怎样做反向链接中国新闻社邮箱
  • 专业的外贸网站建设wordpress后台编辑
  • 德清建设银行网站2016wordpress淘宝客程序
  • 网站建设包括两个方面专业网站设计企业
  • dnf可以去哪个网站做代练导购网站 模板
  • 苏州网站开发培训深圳福田区口岸社区
  • 信息网站开发网络公司jsp实战网站开发视频
  • 做 理财网站深圳网站快速优化公司
  • 公司网站建设方案江门建设建筑网站
  • 网站是生成静态好还是动态好怎么找到域名做的那个网站
  • 婚纱网站页面设计上海商地网站建设公司