您的位置:首页 > 编程语言 > Java开发

Sun 刚公布了NetBeans6.8与GlassfishV三和JEE六

2009-12-16 22:52 369 查看
Sun 刚公布了NetBeans6.8与GlassfishV三和JEE六,我急不可耐地下载安装,并进行了容易的测试;有了JEE器皿,有了开发工具,我们就开展JEE六体味之旅吧!
Servlet3.0轨范——JSR 315(Java Specification Request)。其高级目标包括可插拔web构架、EoD(ease of development——便于开发)特性、支持异步和Comet、保险、与其说他轨范组合、以及其它各项改善。注脚@WebServlet、@@WebFilter、@WebListener诀别对应Servlet、过滤器、与Servlet侦听。
1、新建JEE6项目
打开Netbeans6.8,抉择“新建项目”—>“java web”—>“web 应用程序”其后下一步:

在项目名称处输入“JEE六Test”下一步:

服务器:抉择“GlassFishV三”,Java EE 版本:抉择“Java EE WEB”点击完成则建立一个项目名称是:“JEE六Test” WEB项目。
2、Servlet体会
新建包com.servlet,把测试的代码都放在这个索引中,其后在com.servlet包上单击右键; 抉择“新建”—>“servlet”如次图:

输入姓名“TestServlet”点击完成,去掉诠释代码后如次:

Java代码
一.package com.servlet;
2.
三.import java.io.IOException;
四.import java.io.PrintWriter;
五.import javax.servlet.ServletException;
六.import javax.servlet.annotation.WebServlet;
七.import javax.servlet.http.HttpServlet;
八.import javax.servlet.http.HttpServletRequest;
九.import javax.servlet.http.HttpServletResponse;
10.
11.@WebServlet(name="TestServlet", urlPatterns={"/TestServlet"})
12.public class TestServlet extends HttpServlet {
13.
14.
15. protected void processRequest(HttpServletRequest request, HttpServletResponse response)
16. throws ServletException, IOException {
17. response.setContentType("text/html;charset=UTF-八");
18. PrintWriter out = response.getWriter();
19. try {
20. out.println("");
21. out.println("");
22. out.println("");
23. out.println("");
24. out.println("");
25. out.println("Servlet TestServlet at " + request.getContextPath () + "");
26. out.println("");
27. out.println("");
28.
29. } finally {
30. out.close();
31. }
32. }
33.
34.
35. @Override
36. protected void doGet(HttpServletRequest request, HttpServletResponse response)
37. throws ServletException, IOException {
38. processRequest(request, response);
39. }
40.
41.
42. @Override
43. protected void doPost(HttpServletRequest request, HttpServletResponse response)
44. throws ServletException, IOException {
45. processRequest(request, response);
46. }
47.
48.
49. @Override
50. public String getServletInfo() {
51. return "Short description";
52. }//
53.
54.}
package com.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name="TestServlet", urlPatterns={"/TestServlet"})
public class TestServlet extends HttpServlet {

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-八");
PrintWriter out = response.getWriter();
try {
out.println("");
out.println("");
out.println("");
out.println("");
out.println("");
out.println("Servlet TestServlet at " + request.getContextPath () + "");
out.println("");
out.println("");

} finally {
out.close();
}
}

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}

@Override
public String getServletInfo() {
return "Short description";
}//

}
选中TestServlet.java点击右键,取舍运作则可以瞥Servlet TestServlet at /JEE六TEst页面。真是简略!@WebServlet(name="TestServlet", urlPatterns={"/TestServlet"})解决了一切问题。Name=”TestServlet”是定义了Servlet姓名是TestServlet,urlPatterns=={"/TestServlet"}定义了Servlet访问的URL途径;在浏览器输入http://localhost:8080/JEE六Test/TestServlet就可以看到成效了。
3、体会过滤器(Filter)
取舍com.servlet单击右键,抉择“WEB”—》“过滤器”下一步,在对话框中输入“TestFilter”点击完成。

在新建过滤器配备过滤器调度对话框中“新建”在 URL框中输入 “/*”确定,其后完成。

则生成如次代码:

Java代码
一.package com.servlet;
2.
三.import java.io.IOException;
四.import javax.servlet.Filter;
五.import javax.servlet.FilterChain;
六.import javax.servlet.FilterConfig;
七.import javax.servlet.ServletException;
八.import javax.servlet.ServletRequest;
九.import javax.servlet.ServletResponse;
十.import javax.servlet.annotation.WebFilter;
11.
12.@WebFilter(filterName = "TestFilter", urlPatterns = {"/*"})
13.public class TestFilter implements Filter {
14.
15. public void init(FilterConfig filterConfig) throws ServletException {
16. throw new UnsupportedOperationException("Not supported yet.");
17. }
18.
19. public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
20. request.setCharacterEncoding("UTF-八");
21. chain.doFilter(request, response);
22. }
23.
24. public void destroy() {
25. throw new UnsupportedOperationException("Not supported yet.");
26. }
27.}
package com.servlet;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;

@WebFilter(filterName = "TestFilter", urlPatterns = {"/*"})
public class TestFilter implements Filter {

public void init(FilterConfig filterConfig) throws ServletException {
throw new UnsupportedOperationException("Not supported yet.");
}

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("UTF-八");
chain.doFilter(request, response);
}

public void destroy() {
throw new UnsupportedOperationException("Not supported yet.");
}
}
一个注脚:@WebFilter(filterName = "TestFilter", urlPatterns = {"/*"})完成了过滤器的配备。姓名是TestFilter,对/*全部的访问都过滤;效能是设立编码是UTF-8格式。
4、感受Listener
在com.servlet包姓名上单击右键,抉择新建抉择:“WEB-WEB应用程序侦听程序”如次图:

点击下一步在姓名中输入:“TestServletListener”则生成以次代码:

Java代码
一.package com.servlet;
2.
三.import javax.servlet.annotation.WebListener;
四.import javax.servlet.http.HttpSessionEvent;
五.import javax.servlet.http.HttpSessionListener;
6.
7.@WebListener()
八.public class TestServletListener implements HttpSessionListener {
9.
10. public void sessionCreated(HttpSessionEvent se) {
11. System.out.println("Session Created");
12. }
13.
14. public void sessionDestroyed(HttpSessionEvent se) {
15. System.out.println("sessionDestroyed");
16. }
17.}
package com.servlet;

import javax.servlet.annotation.WebListener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

@WebListener()
public class TestServletListener implements HttpSessionListener {

public void sessionCreated(HttpSessionEvent se) {
System.out.println("Session Created");
}

public void sessionDestroyed(HttpSessionEvent se) {
System.out.println("sessionDestroyed");
}
}
又是一个诠注@WebListener()完成了配备,起步服务器,侦听已经见效了。
呵呵。。。。。。容易吗!开发效率高吧!真是一个爽!
下一节我们体会EJB3.1.
本文来源:
我的异常网
Java Exception
Dotnet Exception
Oracle Exception

1450 - DBconn.executeQuery:[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket

1451 - excel數據導入报java.lang.OutOfMemoryError异常

1452 - libclntsh.so.9.0:cannot open shared object file :No such file or directory

1453 - ORA-04098:触发器某某某无效且未通过重新确认

1454 - java.lang.NoClassDefFoundError: Property class

1455 - sql语句中换行字符串怎么处理

1456 - to_date错误

1457 - ORA-00937: 非单组分组函数

1458 - rownum写法

1459 - PL SQL:Statement ignore

1460 - SP2-0734: 未知的命令开头

1461 - java.lang.InstantiationError: oracle.jdbc.driver.OracleConnection

1462 - ora-24344 success with compilation error

1463 - 监听程序当前无法识别连接描述符中请求的服务

1464 - ORA-01019

1465 - 触发器出错希望不要影响原来的插入事件

1466 - kadbegcre OCIAnyData) 时进程内存不足

1467 - oracle7.3导入数据出错

1468 - 为什么总是提示缺少关键字

1469 - 怎样用一条语句判断用户名错误还是密码错误
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: