- 博客(16)
- 收藏
- 关注
原创 事务
@Test public void testTransaction(){ //获取一个数据库连接,事务前提必须是同一个连接 Connection connection = JDBCUtils.getConnection(); QueryRunner qr=new QueryRunner(); String sql="INSERT INTO `bookstore`.`user`(...
2018-09-29 17:38:20 86
原创 分页
1创建一个Page类 int pageNumber 当前页码,需要用户指定,在Servlet中获取 int pageSize 每页显示的条数,自己或用户指定,在Servlet中设置 int totalRecord 总记录数,需要从数据库中查询 int totalPage 总页数,通过计算获取 int index 开始索引,通过计算获取 List data ...
2018-09-29 15:36:05 126
原创 设计模式---门面模式Facade
编写BaseServlet,重写service方法时发现: protected void service(HttpServletRequest req, HttpServletResponse resp) req.getClass():class org.apache.catalina.connector.RequestFacade HttpServletRequest.class:interf...
2018-09-27 18:27:10 189
原创 冒泡排序
public static void bubbleSort(int []arr) { int[] arr = {12,23,34,56,56,56,78}; for(int i =0;i<arr.length-1;i++) { for(int j=0;j<arr.length-i-1;j++) {//-1为...
2018-09-26 14:57:30 97
转载 备忘录篇JWT,R
JWT 传统的 session 流程 浏览器发起请求登陆 服务端验证身份,生成身份验证信息,存储在服务端,并且告诉浏览器写入 Cookie 浏览器发起请求获取用户资料,此时 Cookie 内容也跟随这发送到服务器 服务器发现 Cookie 中有身份信息,验明正身 服务器返回该用户的用户资料 JWT 流程 浏览器发起请求登陆 服务端验证身份,根据算法,将用户标识符打包生成 token, 并且返回给浏...
2018-09-24 22:56:59 632
原创 使用BeanUtils(Apache Commons组件)将request获取的参数封装成JavaB
public class WebUtils { /** * 将request请求的参数和值封装到JavaBean中,需导入第三方jar包:commons-beanutils-1.9.3.jar * 同时需要:commons-collections-3.2.2.jar&amp;amp;amp;amp;amp;commons-beanutils-1.9.3.jar,否则会抛出异常 * * @param reque...
2018-09-21 19:14:01 769
原创 BaseServlet
问题分析 当我们创建一个 JavaWeb 项目时,一般一个 Servlet 类只处理一个请求方法,当 Servlet 类过多时,就会使项目代码显得冗余,每个继承 HttpServlet 的类都会重写 doGet()和 doPost()方法,进而使得代码复用性降低。而且,在代码维护甚重构时,对于每个模块所对应的大量的 Servlet 类将导致项目的可读性降低。 问题解决 创建 HttpServlet...
2018-09-21 17:18:46 486
原创 JSP页面Base标签解决路径问题
&amp;amp;amp;amp;lt;% String path = request.getContextPath(); StringbasePath=request.getScheme()+&amp;amp;amp;quot;://&amp;amp;amp;quot; +request.getServerName()+&amp;amp;amp;quot;:&amp;amp;amp;quot; +reque
2018-09-21 16:13:38 1247
原创 md5(不可逆)+base64(加密&解密)(表单重复提交token方案优化版)
// 获得MD5摘要算法的 MessageDigest 对象 MessageDigest md5 = MessageDigest.getInstance(&quot;MD5&quot;); // 使用指定的字节更新摘要 md5.update(string.getBytes()); // 获得密文 byte[] digest = md5.digest(); // 通过base64编码成明文字符 BASE64Encode...
2018-09-19 23:47:44 538
原创 session&cookie区别
# session cookie 保存位置 服务器端 客户端 保存 对象 字符串 默认有效时间 在服务器中默认时间是30分钟(表格下方有注意事项!) 默认有效时间为一次会话(一次打开关闭浏览器的过程) 有效时间 会话结束而失效 可以长期保存在客户端 安全性 考虑到安全应当使用 不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗 性能 会在一定...
2018-09-19 11:08:36 104
原创 表单重复提交问题解决方案
1.不使用转发,而是使用重定向,重定向发了两次请求,我们再次刷新,刷新的第二个请求,而不是第一个。 2.网速较慢的情况,我们让表单中的提交按钮只能提交一次,然后就不能再次点击了 <form action="FormServlet" method="post"> <input type="text" name="username"/><br/&
2018-09-18 17:10:25 5585 5
原创 J2EE设计模式-单例模式
1.懒汉模式+synchronized package cn.bdqn.util; import java.io.IOException; import java.io.InputStream; import java.util.Properties; //读取配置文件工具类--单例模式(有且仅有一个实例) public class ConfigManager { //读取配置文件Prop...
2018-09-18 00:14:09 199
原创 Dao层更新优化(c3p0+dbutils)
c3p0相关 1.创建c3p0的配置文件 2.配置文件中的内容为: &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt; &amp;lt;c3p0-config&amp;gt; &amp;lt;!-- 去掉一头一尾的 默认配置方式 和需要用户重写的方式 , 同
2018-09-17 19:56:29 275
原创 Dao层(通用,无需额外jar包,只需导入数据库驱动)
数据库的连接(.properties属性配置文件) 1)想获取连接的话需要在src下创建jdbc.properties driverClass=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test user=root pwd=abc123 2)获取数据库的连接 /* * 要想获取数据库的连接: * 1.导入具体数据库的驱...
2018-09-11 00:51:01 1196
原创 Activiti创建工作流需要的23张表
Activiti使用代码创建工作流需要的23张表 /** * 使用代码创建工作流需要的23张表 */ @Test public void createTable(){ ProcessEngineConfiguration StandaloneProcessEngineConfiguration = ProcessEngineConfig...
2018-09-10 22:30:24 1283
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人