1. request.setAttribute("test", "测试");      

  request.getRequestDispatcher("/index.jsp").forward(request,response);

   请求转发传递参数时只能使用request传递,不能使用重定向,因为response不能传递参数,但可以手动地址栏进行值传递  ,

    例如:

  response.sendRedirect(request.getContextPath()+"/index.jsp?type=checked&name=zhangsan");

2. <a class="button border-main" href="books.sxt?type=selectBooksById&id=${book.id }">

  JSP文件内,EL表达式必须写双引号内,否则无效!

            

3.   Filter的注解配置:@WebFilter(filterName = "encodingFilter", urlPatterns = "/*")   后面没有分号

   Servlet 的注解配置: @WebServlet("/custom.sxt")

4.  chain.doFilter(request,response)一般出现一次,可以出现在任何地方

5.  Dao.Impl:

public class BooksDaoImpl extends BaseDao implements IBooksDao {

    @Override
public List<BooksVo> selectAllBooks(String bookTypeId) {
String sql=null; List<BooksVo> list=new ArrayList<BooksVo>();
if(bookTypeId!=null){
sql="select b.*,b2.booktypename from books b inner join books_order b2 on b.booktypeid=b2.id where b.booktypeid=?";
String[] params={bookTypeId};
ResultSet rs=super.execQuery(sql, params);
}else{
sql="select b.*,b2.booktypename from books b inner join books_order b2 on b.booktypeid=b2.id";
String[] params={bookTypeId};
ResultSet rs=super.execQuery(sql, null); //此处若参数bookTypeId=null,必须将调用方法的参数设置为null,否则空指针错误
}
try {
while(rs.next()){
BooksVo b=new BooksVo();
b.setBookName(rs.getString("bookname"));
b.setBookPrice(rs.getDouble("bookprice"));
b.setBookTypeId(rs.getString("booktypeid"));
b.setBookTypeName(rs.getString("booktypename"));
b.setDescription(rs.getString("description"));
b.setId(rs.getString("id"));
list.add(b); } } catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}

6.  Ajax:$.get()/post() 两种请求传递方式

7.  Json: 是一个对象,不是字符串(其实是一个字符串形式的对象)

      当使用Ajax时,Servlet页面必须用    (response.getWriter.print(new Gson().toJson(传参) ) )     

     print方法会将任何类型的对象转换为字符串的形式,除了 toJson()后的,因为toJson()方法已经将Json转换为字符串的形式,并以String接收,不会再进行第二次转换,但是它并不是字符串,外部没有双引号。  

8.<script></script>标签内不可以写EL表达式

9. append 方法是在标签内部拼加   如:  <h1>  这里拼加 </h1> 

10.DIY 使用重定向response可以将post请求方式改变为get,反之不能(即默认为get请求方式)。

   使用请求转发request,客户端请求是什么方式就是什么方式

11.逻辑删除:

  将数据库中额外添加一列,例如:is_delete  默认为0,如果逻辑删除就该为1,查找显示为0的数据即可

12.Integer的初始化值是Null

13.运算时尽量不要出现多种类型,否则容易出现转换异常,(例如:double类型转字符串,再利用Integer.parseIn方法转int 容易出现转换异常)

14.   类名:首字母大写

  方法名,变量名:首字母小写,驼峰命名

  包名:全小写

15.Filter的url-pattern配置一样的话,它的访问顺序是按照名字排的先后顺序

16.substring(包括,不包括)

17.Ajax原理:

  A.XMLHttpRequest  发送异步请求:

    

    原理:

      客户端无需等待服务器端响应,可以继续进行其他操作,服务器处理完成后调用回调函数进行展现。

    优点:

      1.改良了用户体验;

      2.实现了局部刷新。

  B.传统请求(同步):

  

    原理:

      客户端发送请求和服务器响应间,用户需要等待服务器进行响应,在等待的过程中体验相对比较差。

java:LeakFilling(JSP,servlet,Ajax,Json,Path)的更多相关文章

  1. java:LeakFilling(struts2)

    1.mvc: 目的: 将展现和业务相分离. Model1:JSP+JavaBean Model2:MVC(JSP+Servlet+JavaBean) 优点: A.各司其职,互不干涉 B.有利于分工协作 ...

  2. java:LeakFilling(Servlet,JSP)

    1.web-inf中的  .jsp 文件不会运行,其他都根据web.xml文档中的自然顺序进行运行 2.keep-alive 长连接(持续)  UDP,TCP短连接 3.状态码:1(消息异常) 2(成 ...

  3. Java Web开发(JSP、Servlet)乱码的一揽子解决方案

    千万不要看网上那些杂七杂八的解决乱码的文章,解决乱码最好的方法是(没有之一):在所有地方统一采用UTF-8编码. 这其中包括: 1 - 工程 如果使用的是Eclipse,那么打开Preference, ...

  4. java:LeakFilling(Other)

    1.Java项目的API文档如何生成?请将步骤写出. javadoc 源文件名.java; 2.增加package以后,我们在DOS下编译怎么做? javac -d . Test.java 3.Jav ...

  5. java:LeakFilling(Hibernate)

    1.关系型数据库: Oracle / Mysql 数据持久化的技术: IO JDBC XML  ... 主流的持久层框架: Hibernate mybatis---->apache产品 JPA( ...

  6. java:LeakFilling(面向对象)

    1.类的修饰符只能是:public,默认的.另外:final  ,abstract,(修饰符 (只有:public, 默认,)interface+类名 ). 2.在main函数中创建对象时,new哪个 ...

  7. java:LeakFilling(Spring)

    1.配置文件总结: bean节点: id:用户自定义名称,用于标识当前对象,可以通过getBean(String id)从容器中获取该对象. class:要交给spring容器创建的对象的全类名(包名 ...

  8. java:LeakFilling(JS,JQ)

    1.<a href="javascript:void(0)" onclick="dele();"> a标签不使用链接的时候,必须加javascrip ...

  9. java:LeakFilling(Springmvc)

    1.后台可以同时多个对象接收前端页面的值:(如图两个都打印了) 2.参数绑定的注解,通过该注解可以解决参数名称与controller中形参名称不一致的问题: @RequestParam(name=&q ...

随机推荐

  1. Codeforces 1000 组合数可行线段倒dp 边双联通缩点求树直径

    A /*Huyyt*/ #include<bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) using namespace std ...

  2. jquery前端问题随记

    1.图片名称不变,但要求刷新,web页面不重新加载渲染,在url地址后面加t=时间戳 js脚本 img.src=url+"?t="+Math.random() 如果是jsp页面,要 ...

  3. Python3数据结构汇总

    字符 列表 元组 集合 字典 能否被索引或切片 能 能 能 否 否 元素能否被编辑 否 能 否 能 能 增 1.list.append(x):把一个元素添加到列表的结尾: 2.list.insert( ...

  4. VM删除快照失败,磁盘空间不足,只是删除了快照名字(全网唯一解决办法)

    原创: 删除之前的快照,发现只是把名字删除了, 看着这么多文件也不知道怎么删,一顿百度google也是没找到答案 于是就自己琢磨 因为删除快照的时候,是先把快照删除,然后删除无效的文件 所以先让这个盘 ...

  5. eval与exec的区别,以及变量的作用范围

    # eval与exec的区别:eval 有返回值,而 exec没有返回值 # 这两个函数都是执行python语句,注意:里面传的是字符串的格式 a = eval('1+2') a # 这里a有值 3 ...

  6. 【杂题】[CodeForces 1172E] Nauuo and ODT【LCT】【口胡】

    Description 给出一棵n个节点的树,每个点有一个1~n的颜色 有m次操作,每次操作修改一个点的颜色 需要在每次操作后回答树上\(n^2\)条路径每条路径经过的颜色种类数和. \(n,m< ...

  7. BZOJ 1920 Luogu P4217 [CTSC2010]产品销售 (模拟费用流、线段树)

    题目链接 (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=1920 (luogu) https://www.luogu.org/prob ...

  8. String Compression

    F. String Compression 利用dp和前缀数组来写 dp[i] 所表示的东西是 字符串 s[0:i] (不包括 s[i])能够压缩的最短长度 bj[i][j] 表示的是字符串 s[i: ...

  9. [洛谷P1501] [国家集训队]Tree II(LCT模板)

    传送门 这是一道LCT的板子题,说白了就是在LCT上支持线段树2的操作. 所以我只是来存一个板子,并不会讲什么(再说我也不会,只能误人子弟2333). 不过代码里的注释可以参考一下. Code #in ...

  10. [CSP-S模拟测试]:爬(贪心)

    题目传送门(内部题134) 输入格式 第一行两个数$N,L$. 接下来$N$行每行两个数$A_i,B_i$. 接下来$N$行每行一个整数$C_i$. 输出格式 一行一个整数表示答案,无解输出$-1$. ...