- 脚本中判断是否相等不能用equals,没有这个方法,只能用==
- 数据库工具类,只需要加载一次就够了,所以我们采用静态代码块来初始化该方法,作为工具类使用
public static QueryRunner qr = null;//因为是在不同包下的,所以要用public才可以调用
- Ajax往Servlet发送数据的时候Servlet必须response一个数据,不然会报parseerror,ajax的特点就是有来必有回
- Ajax调试,xhr.state,textState,errorThrown
- Ajax接到值之后不管什么类型都会被转换成字符串格式
- 定义输出路径(默认上传到服务器文件夹下) String path = req.getServletContext().getRealPath("/")还可以指定硬盘的任意一个目录为path,然后把这个位置部署到Tomcat上
Servlet中不能有返回值。给ajax返回值只能通过response的方式,不能return
<thead>和<tbody>为table标签里特有,可以省略,代表表头和表身的主题,在循环的时候<tbody>要包含在循环内
- 配置完本地服务器,连接需要在EL表达式前加上http://localhost/8080/att/,即完整地址,汤姆猫8080显示不出来是因为配置了虚拟服务器没有指定下级路径,服务器默认找的是这个。
- equest设置encoding只解决post的乱码问题,不能解决get的乱码问题
- <a href="javascript:void(0)" οnclick="fenYe(1)">首页</a>,让a链接本身失效,执行我们绑定的方法
上传图片的步骤
- 将form表单添加一个属性, ectype=”Multipart/form-data”
- 给上传控件<input type=”file”> 给一个名字
- Servlet添加注解标记 @MultipartConfig [如果不添加所有数据都获取不到]
- 通过request获取Servlet封装的Part对象
- 通过part获取当前图片的URL信息[为了校验上传的文件格式]。String url = part.getHeader("Content-disposition");
- 定义输出路径
向路径中写入文件
try { Part part = request.getPart("pic");//获得图片的part对象,前提是form表单设置了enctype属性=multipart/form-data //通过part获取当前图片的URL信息(图片的路径) String url = part.getHeader("Content-disposition"); //读取图片名称 String fileName = url.substring(url.indexOf("filename")+10,url.length()-1); System.out.println(fileName); //获取当前文件的后缀 ,判断后缀是否合法 String suffix = fileName.split("\\.")[1];//分割字符串,注意.为特殊字符需要两个\\进行转义 // String suffix = fileName.substring(fileName.indexOf(".")+1);//也可以用截取字符串的方式 System.out.println("suffix:"+suffix); if(!suffix.equals("jpg") && !suffix.equals("png") && !suffix.equals("gif") && !suffix.equals("jpeg")) { request.setAttribute("msg", "图片只支持JPG、PNG、GIF、JPEG格式"); request.getRequestDispatcher("admin/commodity_add.jsp").forward(request, response); } String path = "D:\\Mi_Load"; //判断路径及文件夹是否存在 File file = new File(path); if(!file.exists()) { file.mkdirs();//创建多层目录 } pic = UUID.randomUUID()+fileName; //写入文件 part.write(path+"/"+pic);//part自带write方法 } catch (Exception e) { e.printStackTrace(); }