⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 swapservlet.java

📁 RESIN 3.2 最新源码
💻 JAVA
字号:
package example;import java.io.PrintWriter;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.ejb.EntityManager;import javax.ejb.Inject;import javax.ejb.EJB;import javax.transaction.UserTransaction;/** * The SwapServlet swaps cources. */public class SwapServlet extends HttpServlet {  @Inject  private EntityManager _manager;    @Inject  private UserTransaction _uTrans;    @EJB(jndiName="swap")  private Swap _swap;  /**   * Initializes the database for the demo.   */  public void init()    throws ServletException  {    Course course = null;        try {      course = (Course) _manager.find("Course", new Integer(1));      if (course != null)	return;    } catch (Exception e) {    }    Course potions = new Course();    potions.setCourse("Potions");    potions.setTeacher("Severus Snape");    _manager.create(potions);    Course xfig = new Course();    xfig.setCourse("Transfiguration");    xfig.setTeacher("Minerva McGonagall");    _manager.create(xfig);  }  /**   * Illustrates how to swap with a transaction.   */  public void service(HttpServletRequest req, HttpServletResponse res)    throws java.io.IOException, ServletException  {    PrintWriter out = res.getWriter();    res.setContentType("text/html");    Course []courses = new Course[2];    courses[0] = (Course) _manager.find("Course", new Integer(1));    courses[1] = (Course) _manager.find("Course", new Integer(2));    printCourses(out, "Initial Teachers", courses);    // Swaps the courses using a session bean to handle the transaction.    _swap.swap(courses[0], courses[1]);    printCourses(out, "Swapped Teachers", courses);    // Swaps the courses inside a transaction.  The swap will be atomic,    // i.e. either the swap will succeed or fail.  It will not end up    // in an intermediate state.    try {      _uTrans.begin();      try {	String teacher = courses[0].getTeacher();	courses[0].setTeacher(courses[1].getTeacher());	courses[1].setTeacher(teacher);      } finally {	_uTrans.commit();      }    } catch (Exception e) {      throw new ServletException(e);    }  }  private void printCourses(PrintWriter out, String title, Course []courses)    throws IOException  {    out.println("<h3>" + title + "</h3>");    for (Course course : courses) {      out.println("course: " + course.getCourse() + "<br>");      out.println("teacher: " + course.getTeacher() + "<br>");      out.println("<br>");    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -