日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jsp整合mybatis案例

發布時間:2024/1/23 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jsp整合mybatis案例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

View視圖層:注冊頁面

?

<form action="regServlet" method="post">賬號:<input type="text" name="username"/><br/>密碼:<input type="password" name="pwd"/><br/>確認密碼:<input type="password" name="repwd"/><br/>愛好:<input type="checkbox" name="hobby" value="讀書"/>讀書<input type="checkbox" name="hobby" value="旅游"/>旅游<input type="checkbox" name="hobby" value="逛街"/>逛街<br/><input type="submit" value="注冊"/>"</form>


顯示所有頁面的jsp代碼

?

?

<table border="1" width="100%"><tr><td>賬戶</td><td>密碼</td><td>愛好</td><td colspan="3">操作</td></tr><c:forEach items="${list}" var="m"><tr><td>${m["USERNAME"] }</td><td>${m["PWD"] }</td><td>${m["AIHAO"] }</td><td><a href='zhuce.jsp'>增加</a></td><td><a href='delServlet?username=${m["USERNAME"] }'>刪除</a></td><td><a href='javascript:alert("a")'>刪除</a></td></tr></c:forEach></table>


web.xml配置文件

?

?

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"><welcome-file-list><welcome-file>zhuce.jsp</welcome-file></welcome-file-list><!-- 配置servlet --><servlet><servlet-name>regServlet</servlet-name><servlet-class>com.controller.RegServlet</servlet-class></servlet><servlet><servlet-name>allServlet</servlet-name><servlet-class>com.controller.AllServlet</servlet-class></servlet><servlet><servlet-name>DelServlet</servlet-name><servlet-class>com.controller.DelServlet</servlet-class></servlet><servlet-mapping><servlet-name>regServlet</servlet-name><url-pattern>/regServlet</url-pattern></servlet-mapping><servlet-mapping><servlet-name>allServlet</servlet-name><url-pattern>/allServlet</url-pattern></servlet-mapping><servlet-mapping><servlet-name>DelServlet</servlet-name><url-pattern>/delServlet</url-pattern></servlet-mapping> </web-app>


mybatis的配置文件

?

?

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration><environments default="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="oracle.jdbc.driver.OracleDriver"/><property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/><property name="username" value="scott"/><property name="password" value="tiger"/></dataSource></environment></environments><mappers><mapper resource="com/mapper/UserinfoMapper.xml"/></mappers> </configuration>

返回SqlSession對象的公共類

?

?

package com.util;import java.io.IOException; import java.io.Reader; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; //公共類,讀取config.xml文件,用來和數據庫建立聯系 //The AdapterNet wrong:修改config.xml為ip地址 public class SSFU {public static SqlSession getSqlSession(){Reader reader=null;SqlSessionFactory factory=null;SqlSession session=null;try {reader = Resources.getResourceAsReader("config.xml");factory=new SqlSessionFactoryBuilder().build(reader);} catch (IOException e) {e.printStackTrace();}finally{try {if(reader!=null){reader.close();}} catch (IOException e) {e.printStackTrace();}} return factory.openSession();} }


model層

?

實體類:

?

package com.model; //用戶信息實體類 public class Userinfo {private String username;private String pwd;private String aihao;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String getAihao() {return aihao;}public void setAihao(String aihao) {this.aihao = aihao;}}

接口業務定義:

?

?

package com.biz;import java.util.List; import java.util.Map; import com.model.Userinfo;//接口,定義了4個抽象方法,增刪改查,對userinfo表 public interface UserinfoMapper {public int insertUserinfo(Userinfo u);public int updateUserinfo(Userinfo u);public int deleteUserinfo(Userinfo u);public List<Map>selectAll();//無參數; }


接口對應的映射文件

?

?

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!--這個映射文件,相當于接口的實現類,4個方法,現在4個實現. --> <mapper namespace="com.biz.UserinfoMapper"><insert id="insertUserinfo" parameterType="com.model.Userinfo">insert into userinfo values(#{username},#{pwd},#{aihao})</insert><update id="updateUserinfo" parameterType="com.model.Userinfo">update userinfo set pwd=#{pwd} where username=#{username}</update><delete id="deleteUserinfo" parameterType="com.model.Userinfo">delete from userinfo where username=#{username}</delete><select id="selectAll" resultType="java.util.Map">select * from userinfo</select> </mapper>

控制層,控制器

?

注冊Servlet

?

package com.controller;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.servlet.http.HttpSession;import org.apache.ibatis.session.SqlSession;import com.biz.UserinfoMapper; import com.model.Userinfo; import com.util.SSFU; //作用是一個控制器,一手托view,一手托model public class RegServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {//0.解決亂碼req.setCharacterEncoding("utf-8");//1.接受從zhuce頁面傳過來的數據;String username=req.getParameter("username");//名字不一樣,會報NUllpointerExceptionString pwd=req.getParameter("pwd");String[]hobbys=req.getParameterValues("hobby");//1.2將愛好數組轉化為字符串 ;String aihao="";for(int i=0;i<hobbys.length;i++){aihao+=hobbys[i]+",";}aihao=aihao.substring(0,aihao.length()-1);//截取最后的一個","//*********************************//操作model對象;新增對象;Userinfo u=new Userinfo();u.setUsername(username);u.setPwd(pwd);u.setAihao(aihao);//真正的存放到數據庫,利用mybatisSqlSession session =SSFU.getSqlSession();UserinfoMapper um = session.getMapper(UserinfoMapper.class);um.insertUserinfo(u);session.commit();session.close();//將數據放到session,然后重定向;這個是假的增加數據;HttpSession hsession=req.getSession();hsession.setAttribute("u",u);//設置session的屬性,存放剛才的對象;resp.sendRedirect("chenggong.jsp");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {this.doGet(req, resp);}}


查找所有Servlet

?

?

package com.controller;import java.io.IOException; import java.util.List; import java.util.Map;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession;import org.apache.ibatis.session.SqlSession;import com.biz.UserinfoMapper; import com.util.SSFU; //查詢所有用戶信息的控制器; public class AllServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {//從數據庫查詢所有信息;SqlSession session =SSFU.getSqlSession();UserinfoMapper um = session.getMapper(UserinfoMapper.class);List<Map>list=um.selectAll();System.out.println(list.size());for(Map map:list){System.out.println("姓名:"+map.get("USERNAME")+",密碼:"+map.get("PWD")+",愛好:"+map.get("AIHAO"));}session.commit();session.close();HttpSession hsession=req.getSession();hsession.setAttribute("list", list);resp.sendRedirect("showAll.jsp");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {this.doGet(req, resp);} }


讀者可以在此基礎上,完善下修改 和刪除操作,如果修改和刪除,是漢字的話,可能會有get傳值亂碼問題,可以到tomcat的conf目錄下,修改server.xml,在connector標簽下,增加URIEncoding="utf-8"即可。

?


?

?

總結

以上是生活随笔為你收集整理的jsp整合mybatis案例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。