1.在web.xml中,<init-param>标签用于预置参数,在Servlet中可用 getServletConfig().getInitParameter("xx")获得;
2.在Servlet中覆盖service()方法时,要用super.service()调用HttpServlet的service()方法;
3. response.sendRedirect("1.jsp"); 此种跳转方式称为"请求重定向",产生了2个请求,地址栏内容发生变化,性能较差;
request.getDispatcher("1.jsp").forward(request,response);此种跳转方式称为"请求转发",只产生了1个请求,地址栏内容不变,性能较优;它与jsp中的<jsp:forward page="1.jsp"/>起相同的作用;
4. request.getDispatcher("1.jsp").include(request,response); -->在一个资源中包含另一个资源; 与jsp中的<jsp:include page="1.jsp"/>起相同的作用;
5. 在jsp文件 中include一个html文件,会出现乱码, 建议只include jsp文件;若要避免乱码可尝试使用过滤器;
6. 若使用frameset定义上下左右布局,或者使用"请求转发"并在request里设置了参数, 有时javascript可能会出现里的奇怪的"对象未定义"等错误, 此时只需在head标签中添加一句: <base href="<%=basePath%>xxx/xxx/">;
7.在比较字符串相等时, 变量.equals("abc")与"abc".equals(变量)是有所区别的, 区别就是后者不会出现空指针异常(NullPointException);
8. 在jsp中写<% int i=0; %> 与写<%! int i=0; %>的作用是不同的,区别虽然只有1个感叹号,编译出的Servlet里2个变量的位置却不同,一个是全局变量,另一个是局部变量;
9. 四种响应Ajax请求的方法: 自行序列化为xml; xml数据映射; 页面模板; JSON; (前3个不是很理解);
10.如果try-catch块中有return语句, finally块中也有return语句,那么前者将会被无视掉,具体效果可自行做实验;
11.如何实现防盗链? 在A网站上获取B网站的图片资源,那么页面一定是先访问的www.A.com的某个url,然后访问的www.B.com的资源url,所以通过request.getHeader("referer")获得上一次访问的地址,如果结果为空或者网站名不是B,那么就将指定的防盗链声明的图片作为响应.
12. 各种过滤器的应用: 防盗链过滤器,日志记录过滤器,权限验证过滤器,字符编码过滤器,防止缓存过滤器,文件上传过滤器,使用过滤器自动生成静态页面...
13. 防止页面缓存的过滤器:
缓存带来的影响:可能使得web服务器不能正确地计算一个页面或一个广告被浏览的次数,或者导致页面的图片信息不能得到及时的更新.
(1)设置http-equiv属性的参数expires,控制网页的过期时间;
(2)设置http-equiv属性的参数pragma,禁止浏览器从本地计算机的缓存中访问页面内容;
(3)设置http消息头中的Cache-control参数,控制页面的缓存. 其常见值有private,no-cache,max-age,must-revalidate,默认值为private;
Cache-control的作用根据浏览方法的不同可以分为以下几种情况:
①以打开新窗口的方式进行浏览: 如果指定 Cache-control的值为private、no-cache或者must-revalidate,那么打开新窗口访问时就会重新访问服务器; 如果指定的值是max-age,那么在此值规定的时间内不会重新访问服务器.
②在地址栏里按回车键进行浏览: 如果值为private或must-revalidate, 则只有第一次访问时才会访问服务器,以后就不再访问; 如果值为no-cache,那么每次都会访问; 如果值为max-age,那么在过期之前不会重复访问服务器;
③按后退键进行浏览: 如果值为private、must-revalidate、max-age, 则不会重复访问; 如果值为no-cache,则每次都重复访问;
④按刷新键: 无论为何值,都会重复访问. 如果指定Cache-control值为no-cache,访问此页面不会在Internet临时文件夹中留下文件备份.
(以前从什么地方看到的,貌似按F5刷新和按Shift+F5刷新有所不同....)
14. 数据库对分页的支持: mysql有limit关键字,sql server有top关键字,oracle有rownum属性.
15.处理jspSmartUpload组件下载文件名乱码问题:
/**
* 将文件名中的汉字转为UTF8编码的串,以便下载时能正确显示另存的文件名.
* @param s 原文件名
* @return 重新编码后的文件名
*/
public static String toUtf8String(String s) {
StringBuffer sb = new StringBuffer();
for (int i=0;i<s.length();i++)
{ char c = s.charAt(i);
if (c >= 0 amp;amp; c <= 255) {
sb.append(c);
}
else {
byte[] b;
try {
b = Character.toString(c).getBytes("utf-8");
}
catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0) k += 256;
sb.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
return sb.toString();
}
分享到:
相关推荐
## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载...
总之,《JSP+SQL网上选课系统》是一个综合运用了前端和后端技术的实例,对于计算机专业的学生来说,无论是理解Web开发流程,还是学习数据库操作,都是一个宝贵的实践平台。通过分析和研究这个系统,可以提升学生的...
webstore中的内容会详细展示系统架构、数据库连接、JSP页面实现、Servlet控制逻辑等关键部分。 基于以上信息,我们可以推测该系统的核心技术栈可能包括: - JSP和Servlet:用于处理用户请求和响应,执行服务器端...
【标题】:“jsp网上书店系统(源代码+论文)”是一个典型的基于Java Web技术的项目实践,主要使用了JSP(JavaServer Pages)语言来构建一个完整的在线图书销售平台。这个压缩包包含了该项目的源代码和相关的毕业...
- Servlet:JSP通常与Servlet配合使用,Servlet负责处理业务逻辑,JSP则负责展示视图。 - JDBC(Java Database Connectivity):Java与数据库交互的接口,用于执行SQL语句。 - MVC架构:模型负责业务逻辑,视图负责...
Java的Servlet和JSP技术用于接收和响应用户请求,处理业务逻辑并动态生成网页。Servlet负责处理请求,JSP则负责展示数据,两者配合实现了前后端分离,提高了代码的可维护性。 JSP(JavaServer Pages)是一种动态...
总结,"基于SSM++jsp的大学生兼职平台"项目涵盖了Java Web开发的核心技术和实践,对于学习者而言,它提供了一个实际操作的平台,可以深入理解SSM框架的工作原理和JSP的应用,同时锻炼了数据库设计和Web应用开发的...
在技术实现上,Java的Servlet和JSP配合工作,处理用户的HTTP请求,而Applet在前端提供动态显示和交互。数据库如MySQL或Oracle通常用于存储用户数据,保证数据持久化。此外,MVC(模型-视图-控制器)设计模式可能被...
《Java Web开发技术》实践技能测试A主要涵盖了Java Web应用的开发,具体涉及JSP、JavaBean和Servlet技术,以及数据库设计与管理。本测试要求考生利用MyEclipse 5.x开发环境,配合SQLServer 2005数据库,基于Java Web...
它可以检查用户的登录状态、角色权限等信息,只有满足条件的请求才会被传递给后续的Servlet或JSP处理。例如,我们可以创建一个过滤器检查session中的用户信息,如果没有找到有效登录信息,就重定向到登录页面。权限...
系统采用MVC(Model-View-Controller)架构,其中Model代表ShopBean、CartBean和ShopDBBean这样的数据模型,View是JSP页面,Controller是Servlet,负责协调模型和视图的交互。 通过这个设计,开发者可以深入理解...
这个系统的主要功能是根据用户输入的航班号查询航班信息,利用SQL Server作为后台数据库,涉及的技术包括JSP、Servlet、DAO设计模式以及数据库操作。 **一、技术选型与环境搭建** 1. **实现语言**: 项目采用Java...
在实际开发过程中,开发者需要根据具体的技术栈,如Java、Servlet、JSP等,编写代码实现这些功能,并使用合适的数据库技术,如MySQL或Oracle,来存储和处理数据。同时,系统可能还需要考虑安全性,如密码加密存储,...
数据库存储要求包括收入数额、支出数额、备注、日期等信息。这些信息将被存储在数据库中,以便用户可以随时查看和操作。 4. Jsp 页面设计 Jsp 页面设计包括登录界面、查询界面、操作界面等。登录界面要求用户输入...
这个过程涉及多个步骤,包括对接口的理解、配置、调用以及异常处理。首先,我们需要了解支付宝提供的API服务。 ... 1. **接口文档与SDK获取** ...在实践中,务必注意数据安全和合规性,提供良好的用户体验。
在JSP中,控制器可以是Servlet或者JSP本身的一部分。 5. **连接数据库**: - **JDBC(Java Database Connectivity)**:Java中的数据库连接接口,允许Java应用程序连接到各种数据库。开发者需要编写JDBC代码来建立...
【编程购物车试训收集.pdf】是一个关于购物车系统...这个购物车系统的设计涉及到数据库管理、前端展示、后端业务逻辑处理以及用户交互,是典型的Web应用程序开发案例,对于学习Java Web开发和理解MVC模式具有实践意义。
7. MVC(Model-View-Controller)架构中,Jsp通常用于视图,Servlet处理控制逻辑。 8. JSP内置对象中,`context`不是正确的选项,应该是`pageContext`。 9. 取地址运算符(&)可以用于变量的地址,所以&A是合法的,...
- 使用MVC模式,JSP处理视图,Servlet处理控制,JavaBean处理模型。 - JSP中使用EL表达式、JSTL标签和JavaScript增强动态交互。 - JavaBean负责数据操作和业务逻辑,虽然未使用接口,但接口的引入有助于提高代码...