自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

想吃一口西多

甜甜的西多

  • 博客(24)
  • 收藏
  • 关注

原创 jsp+servlet实现商城购物车功能

<a href="AddCart?id=${b.id}"><button class="btn btn-default">加入购物车<span class="glyphicon glyphicon-shopping-cart"></span></button></a>商品详情页

2018-05-29 17:03:39 14957 14

原创 过滤器

程序中的过滤器:双向过滤器在Java中最小的程序单元是类,程序中的过滤器就是一个特殊的类Servlet/Filter是web的一个组件-------------------------------------------------------------------------web中过滤器的作用(简单理解为:过滤器在客户端和服务端资源之间)过滤器可以对所有请求或者响应做拦截...

2018-05-26 14:40:19 118

原创 使用令牌机制解决表单重复提交的问题

表单的重复提交:根本原因:没有完整的进行一次请求页面->提交页面的过程而完成数据提交造成重复提交的现象:1):由于服务器缓慢或网络延迟的原因,重复点击提交按钮2):已经提交成功,刷新成功页面(forward)3):已经提交成功,通过回退,再次点击提交按钮 如果使用按钮禁止多次点击,只能解决第一个现象所以还是要用令牌机制其中,销毁session的口令...

2018-05-25 22:26:42 905

原创 生成验证码及使用

生成验证码的Servletpublic class ImageCodeServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { //...

2018-05-25 16:05:16 282

原创 BeanHandler,BeanListHandler-通用的结果集处理器

可以把不同表中的每一行数据,封装成不同类型的对象注意/规范:1.规定表中的列名必须和对象中的属性名相同2.规定表中列名的类型必须和Java中的类型匹配---------------------------------------------------------------------BeanHandler:表示把结果集中的一行数据,封装成一个对象,专门针对结果集中只有一行数据的情况。BeanL...

2018-05-22 17:04:20 8229

原创 JdbcTemplate的DQL操作升级

新建一个handler包,定义处理器的接口//结果集处理器,规范处理结果集的方法名称public interface ResultSetHandler<T>{ T handle(ResultSet rs) throws Exception;}T作为一种未知类型,表示处理完结果集,最后结果集就是该类型,类型由该方法的调用者决定在DAOImpl类中,实现上述接口//把结果集中的每一...

2018-05-22 10:36:50 133

转载 Java中的泛型<T>类与方法

转载自https://blog.csdn.net/songkai320/article/details/51822497泛型就是变量类型的参数化。在使用泛型前,存入集合中的元素可以是任何类型的,当从集合中取出时,所有的元素都是Object类型,需要进行向下的强制类型转换,转换到特定的类型。而强制类型转换容易引起运行时错误。泛型类型参数只能被类或接口类型赋值,不能被原生数据类型赋值,原生数据类型需要...

2018-05-22 10:14:39 306

原创 文件下载

public class DownloadServlet extends HttpServlet{ private static final long serialVersionUID = 1L; @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws Servl...

2018-05-21 18:04:01 79

原创 文件大小约束

ServletFileUpload upload=new ServletFileUpload(factory);upload.setFileSizeMax(1024*60); //限制上传文件不能超过60KBupload.setSizeMax(1024*100); //限制所有上传的表单控件加起来不能超过100KB;catch(FileSizeLimitExceededExcepti...

2018-05-18 15:58:25 139

原创 抽取FileUtil工具类

public class FileUtil { public static void upload(HttpServletRequest request) { //解析和检查请求:请求方式是否是POST,请求编码是否是multipart/form-data boolean isMultipart =ServletFileUpload.isMultipartContent(request...

2018-05-18 13:27:52 558

原创 上传文件的类型约束

boolean isMultipart =ServletFileUpload.isMultipartContent(req);String ext=FilenameUtils.getExtension(item.getName());String[] allowedImageType=ALLOWED_IMAGE_TYPE.split(";");//当前上传文件的类型不在图片允许的格式之内if...

2018-05-18 10:28:17 217

原创 文件上传

1)上传控件所在的form表单的method,必须为POST      因为GET方式传入的数据大小不能超过2KB,而POST没有大小限制2)上传控件必须使用type="file"3)表单的编码方式必须是二进制编码,&lt;form enctype="multipart/form-data"&gt; &lt;form action="upload" method="post" enctype=&quot

2018-05-17 13:24:05 106

原创 JdbcTemplate的DML,DQL操作

JdbcTemplate类主要用来减少daoimpl的代码量public static int update(String sql,Object...params) { Connection conn=null; PreparedStatement ps=null; try { conn=DruidUtil.getConn(); ps=conn.prepareStateme...

2018-05-11 23:55:06 349

转载 在Eclipse中使用JUnit4进行单元测试(初级篇)

本文绝大部分内容引自这篇文章:https://blog.csdn.net/andycpp/article/details/1327147/我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数...

2018-05-09 20:33:56 194

原创 合并servlet后的问题

@WebServlet("/stu")public class StudentServlet extends HttpServlet{ private static final long serialVersionUID = 1L; //使用单例模式 private StudentDAO dao; public void init() { dao=new Stu...

2018-05-09 20:05:32 366

原创 servlet映射失效--找不到"javax.servlet.annotation.WebServlet"

一直找不到这个映射类,导入了servlet-api.jar,tomcat-api.jar,都没用。最后的解决办法:这个项目buildpath下add library-&gt;Server runtime-&gt;tomcat8.0然后就多了下面这个库= =然后就可以啦哈哈...

2018-05-08 13:16:17 1356

原创 DBCP连接池

引入两个新的jar包public class DbcpTest { public DataSource getDataSource() { BasicDataSource ds=new BasicDataSource(); //设置连接数据库的四要素 ds.setDriverClassName("com.mysql.jdbc.Driver"); ds.setUrl("j...

2018-05-06 22:49:16 134

原创 连接池

连接池具有的属性:提高连接池的性能1 ) 连接数据库的四要素2 ) 初始连接数: 5,最开始连接池中存在5个Connection对象3)最大连接数:10,连接池中最多存储10个Connection对象4)最小连接数:3,连接池中最少存储3个Connection对象5)最大的空闲时间:2min,如果获取Connection对象后,在2分钟之内,没有动作,就自动释放连接6)...

2018-05-06 13:22:36 169

原创 获取自动生成的主键

public class ReturnPKtest { @Test public void testStatement() throws Exception { String sql="Insert into user1(name) values('aa')"; Connection conn=JdbcUtil.getConn(); Statement st=conn.cr...

2018-05-04 23:34:16 522

原创 BLOB类型和TEXT类型

public class BlobTest { @Test public void test1() throws Exception { String sql="insert into img(img) values (?)"; Connection conn=JdbcUtil.getConn(); PreparedStatement pst=conn.pr...

2018-05-04 20:35:38 7362

原创 mysql中的批处理

Connection conn=JdbcUtil.getConn(); Statement st=conn.createStatement();; for(int i=0;i&lt;=1000;i++) { String sql="insert t_student(sname,age) values('a', "+i+")"; st.addBatch(sql); //把sq...

2018-05-04 15:35:01 462

原创 事务概述和处理

事务(Transaction,简写tx):在数据库中,所谓事务是指一组逻辑操作,无论成功与失败都作为一个整体进行工作,要么全部执行,要么不执行 处理事务的两个动作:提交:commit:当整个事务中,所有的逻辑操作都正常执行成功-----&gt;提交事务回滚:rollback:当整个事务中,有一个或多个逻辑操作执行失败------&gt;回滚事务,撤销该事务中的所有操作,恢复到最初的状态------...

2018-05-03 23:24:42 249

原创 PreparedStatement的优势

PreparedStatement和Statement都可以表示语句对象PreparedStatement相对于Statement的优势:1)拼接sql上,操作更简单2)性能更加高效,但是要取决于数据库服务器是否支持    mysql:不支持         Oracle:支持3)安全性更高,防止SQL注入...

2018-05-02 21:55:44 188

原创 重构后的JdbcUtil

package util;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import...

2018-05-02 21:33:11 170

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除