Mybatis foi antecessor de Ibatis. É uma estrutura de camada de persistência de dados (ORM). Mybatis é uma excelente estrutura de camada de persistência que suporta consultas SQL simples, procedimentos armazenados e mapeamento avançado. Mybatis elimina as configurações manuais de quase todo o código e parâmetros JDBC e pesquisam conjuntos de resultados. O Mybatis usa XML simples ou anotações para configuração e mapeamento original, interfaces de mapeamento e POJOS de Java (Planeje objetos Java Old, objetos Java comuns) nos registros no banco de dados. Cada aplicativo Mybatis usa principalmente instâncias SQLSessionFactory, e uma instância SQLSessionFactory pode ser obtida através do SQLSessionFactoryBuilder.
O código específico é o seguinte:
<?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> <typeAliases> <!-- give a alias for model --> <typeAlias alias = "bens" type = "com.clark.model.goods"> < /typeAlias> < /typeAliases> <ambientes default = "desenvolvimento"> <ambiente id = "desenvolvimento"> <transação name = "url" value = "jdbc: oracle: thin:@172.30.0.125: 1521: oradb01"/> <propriedade name = "nome de usuário" value = "assentamento"/> <names (names) <fertments "value =" liquidment "/> </dataSource> </mabody> </clain> <mingments" </mappers> </figuration> <? xml versão = "1.0" coding = "utf-8"?> <! Doctype mapepper public "-// mybatis.org//dtd mappper 3.0 //" Mapeie os resultados da consulta de banco de dados para o Model-Goods-> <ResultMap type = "com.clark.model.goods" id = "t_good"> <id column = "id" propriedade = "id"/> <resultado column = "cate_id" property = "cateId"/> <resultado column = "Nome" "Nome =" Name "" Name "" Name "" Name "" Name "" Name "" Name "" Nome "" "Cate_Id" CateId "/> <resultado" "Nome" "Nome =" = "Name" "Name" "Nome" "Cate_id" = "CateId"/> <resultado "=" Nome "" column = "Descrição" Property = "Descrição"/> <resultado column = "Order_no" Property = "OrderNo"/> <Result Column = "Update_time" Property = "UpdateTime"/> </ResultMap> <!-Return bens Type com base na consulta ID <theealias alias = "bens" Type = "Com.)-! ResultType-> <select id = "selectgoodbyId" parameterType = "int" resultype = "bens"> selecione ID, cate_id, nome, preço, descrição, order_no, update_time de bens where id = #{id} </select> <!-consulta de retorno de mercadorias id, cate_id, nome, preço, descrição, order_no, update_time de bens </leclect> <!-especificar parameterType = mapa onde o mapa é mapa <string, pagebean> map-> <select id = "selectGoodsbypage" ResultMap = "T_GOOD" o parameter = "map"> <!-order por idiP ". Selecione * de (selecione g. bens (id, cate_id, nome, preço, descrição, order_no, update_time) valores (#{id},#{cateId},#{name},#{price},#{description},#{orderno},#{updateTime}) </insert> <! Atualizar bens G Set G.Name = #{Nome}, G.Order_No = #{OrderNo} onde G.id = #{id} </update> <!-Excluir o tipo de parâmetro de bens é int-> <delete id = "DeLeteGood" ParameterType = "int"> Excluir de bens Where G.id = {Id {Id Id " importar java.util.date; Public classe bens {ID inteiro privado; Inteiro privado cateid; nome de string privado; preço duplo privado; Descrição de String Private; ordem inteira privada não; Data privada UpdateTime; public bens () {} bens públicos (ID inteiro, cateid inteiro, nome da string, preço duplo, descrição da string, ordem inteira, updateTETime) {super (); this.id = id; this.cateId = cateid; this.name = nome; this.price = preço; this.Description = Descrição; this.OrderNo = OrderNo; this.UpDateTime = UpdateTime; } public integer getId () {return id; } public void SetId (ID inteiro) {this.id = id; } public integer getCateId () {return cateid; } public void setCateId (Inteiro cateid) {this.cateId = cateID; } public string getName () {return name; } public void setName (nome da string) {this.name = name; } public Double getPrice () {Return Price; } public void setPrice (preço duplo) {this.price = price; } public string getDescription () {return description; } public void SetDescription (String description) {this.Description = Descrição; } public integer getOrderNo () {return orderno; } public void SetorderNo (Inteiro OrderNo) {this.orderNo = OrderNo; } public date gettimestamp () {return updateTime; } public void setTimestamp (data updateTime) {this.UpDateTime = UpdateTime; } @Override public string tostring () {return "[bens incluem: id ="+this.getId ()+", name ="+this.getName ()+", orderno ="+this.getorderno ()+", cateid ="+this.getcateId ()+", updatime =" +.timestern] }} pacote com.clark.model; // Um objeto de paginação simulado PageBean public class PageBean {// Iniciar o número privado de número inteiro privado; // Número final do número inteiro privado EndNumber; public PageBean () {} public PageBean (Inteiro StartNumber, Integer EndNumber) {super (); this.startNumber = startNumber; this.endNumber = endNumber; } public integer getStartNumber () {return startNumber; } public void setStartNumber (número inteiro startNumber) {this.startNumber = startNumber; } public integer getEndNumber () {return endNumber; } public void setendNumber (número inteiro endNumber) {this.endNumber = endNumber; }} pacote com.clark.mybatis; importar java.io.ioException; importar java.io.Reader; importar java.util.hashmap; importar java.util.list; importar java.util.map; importar org.apache.ibatis.io.resources; importar org.apache.ibatis.session.SQLSession; importar org.apache.ibatis.session.sqlSessionFactory; importar org.apache.ibatis.session.sqlSessionFactoryBuilder; importar com.clark.model.goods; importação com.clark.model.pageBean; classe pública Testgoods {public static void main (string [] args) lança ioexception {string Resource = "Configuration.xml"; Leitor leitor = null; SQLSessionFactory SessionFactory = NULL; SQLSession Session = NULL; tente {reader = Resources.GetResourCeasReader (recurso); sessionFactory = new SQLSessionFactoryBuilder (). Build (leitor); session = sessionFactory.opensssion (); PageBean PageBean = novo PageBean (8, 20); Mapa <String, PageBean> map = new Hashmap <String, PageBean> (); map.put ("PageBean", PageBean); List <Coms> gs = findgoodsbypage (sessão, mapa); for (bens bens2: gs) {system.out.println (bens2.toString ()); }} catch (ioexception e) {e.printStackTrace (); } finalmente {session.close (); leitor.close (); }} // Encontre por ID Public estático FindgoodbyId (SqlSession Session, ID ID inteiro) {// Clark corresponde ao namespace name = "Clark" no arquivo de configuração Goodmapper.xml. Bens bens = (bens) session.SelectOne ("Clark.SelectgoodById", ID); bens de devolução; } // Encontre toda a lista de estática pública <CSEM> FindAllgoods (SQLSession Session) {List <Coms> bens = session.SelectList ("Clark.Selectallgoods"); bens de devolução; } Lista estática pública <Coms> findGoodsbypage (sessão de SQLSession, mapa <string, PageBean> map) {list <ports> bens = session.selectList ("Clark.Selectgoodsbypage", mapa); bens de devolução; } // Insira uma bens public static int insertgoods (sessão de sqlsession, bens de mercadorias) {int resultado = session.insert ("Clark.insertgood", bens); session.Commit (); resultado de retorno; } // Atualize mercadorias public static int updateDoods (sessão de sqlsession, bens de mercadorias) {int resultado = session.Update ("Clark.UpDateGateod", bens); session.Commit (); resultado de retorno; } // Excluir bens public static int DeLetegood (sessão de SQLSession, ID inteiro) {int resultado = session.Delete ("Clark.deletegood", id); session.Commit (); resultado de retorno; }}Apresentarei você o conhecimento relevante sobre os métodos da Mybatis para implementar consulta de adição, exclusão, modificação e paginação. Continuarei a atualizá -lo para você mais tarde. Obrigado pelo seu suporte contínuo para o site da Wulin Network.