当前位置: 首页 > news >正文

网站开发预算怎么算手机网站开发例子

网站开发预算怎么算,手机网站开发例子,注册公司没有场地怎么办,微站图片Mybatis方式完成CRUD操作 文章目录 Mybatis方式完成CRUD操作1、java以Mybatis方式操作DB1.1、配置数据源-创建 resources/mybatis-config.xml1.2、创建java bean-Monster1.3、配置Mapper接口声明方法1.4、配置xxMapper#xff0c;完成SQL配置,实现CRUD操作1.5、Test测试 2、需…Mybatis方式完成CRUD操作 文章目录 Mybatis方式完成CRUD操作1、java以Mybatis方式操作DB1.1、配置数据源-创建 resources/mybatis-config.xml1.2、创建java bean-Monster1.3、配置Mapper接口声明方法1.4、配置xxMapper完成SQL配置,实现CRUD操作1.5、Test测试 2、需要的Utils工具类3、pom基础依赖4、数据库建表操作 Java开发在以前做数据库连接的时候通过JDBC来完成非常麻烦。 现在引入了MyBatis这个框架Mybatis是简化数据库操作的持久层框架。 使用Mybatis的好处 mybatis 可以将对数据表的操作(sql,方法)等等直接剥离写到 xml 配置文件实现和 java 代码的解耦MyBatis 在 java 和 sql 之间提供更灵活的映射 1、java以Mybatis方式操作DB 1.1、配置数据源-创建 resources/mybatis-config.xml ?xml version1.0 encodingUTF-8 ? !DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttps://mybatis.org/dtd/mybatis-3-config.dtd configuration!-- 配置mybatis自带的日志输出--settingssetting namelogImpl valueSTDOUT_LOGGING//settings!-- 配置类型别名--typeAliasestypeAlias typecom.linghu.entity.Monster aliasMonster//typeAliasesenvironments defaultdevelopmentenvironment iddevelopment!-- 配置事务管理器--transactionManager typeJDBC/!-- 配置数据源--dataSource typePOOLED!-- 配置驱动--property namedriver valuecom.mysql.jdbc.Driver/!-- 配置数据库的链接--property nameurlvaluejdbc:mysql://127.0.0.1:3306/mybatis?useSSLtrueamp;useUnicodetrueamp;characterEncodingUTF-8/!-- 数据库的用户名和密码--property nameusername valueroot/property namepassword value123456//dataSource/environment/environments!-- 这里设置我们需要管理的mapper.xml文件--!-- 可以通过快捷键copy这个地址--mappersmapper resourcecom/linghu/mapper/MonsterMapper.xml//mappers/configuration1.2、创建java bean-Monster 创建bean的时候要对照自己设计的数据库表字段进行设计要一一对应 package com.linghu.entity;import java.util.Date;/*** author 令狐荣豪* version 1.0* Monster类和monster表有对应关系,字段要对应* 体现oop*/ public class Monster {private Integer id;private Integer age;private String name;private String email;private Date birthday;private double salary;private Integer gender;public Monster() {}public Monster(Integer id, Integer age, String name, String email, Date birthday, double salary, Integer gender) {this.id id;this.age age;this.name name;this.email email;this.birthday birthday;this.salary salary;this.gender gender;}Overridepublic String toString() {return Monster{ id id , age age , name name \ , email email \ , birthday birthday , salary salary , gender gender };}public Integer getId() {return id;}public void setId(Integer id) {this.id id;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getEmail() {return email;}public void setEmail(String email) {this.email email;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday birthday;}public double getSalary() {return salary;}public void setSalary(double salary) {this.salary salary;}public Integer getGender() {return gender;}public void setGender(Integer gender) {this.gender gender;} } 1.3、配置Mapper接口声明方法 package com.linghu.mapper;import com.linghu.entity.Monster;import java.util.List;/*** author 令狐荣豪* version 1.0* 定义增删改查的接口方法*/ public interface MonsterMapper { // 添加monsterpublic void addMonster(Monster monster);//根据id删除一个Monsterpublic void delMonster(Integer id);//修改 Monsterpublic void updateMonster(Monster monster);//查询-根据 idpublic Monster getMonsterById(Integer id);//查询所有的 Monsterpublic ListMonster findAllMonster(); } 1.4、配置xxMapper完成SQL配置,实现CRUD操作 Monstermapper.xml: ?xml version1.0 encodingUTF-8 ? !DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttps://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespacecom.linghu.mapper.MonsterMapper!-- select idselectBlog resultTypeBlog-- !-- select * from Blog where id #{id}-- !-- /select-- !-- private Integer id;private Integer age;private String name;private String email;private Date birthday;private double salary;private Integer gender;--insert idaddMonster parameterTypecom.linghu.entity.Monsterinsert into monster(age,birthday,email,gender,name,salary) !-- values(10,null,linghuqq.com,1,kate,1000),修改成活数据-- !-- 下面的名称对应的Monster对象的属性名--values(#{age},#{birthday},#{email},#{gender},#{name},#{salary})/insertdelete iddelMonster parameterTypeIntegerdelete from monster where id#{id};/delete!-- 这里的入参类型最好不要简写-- !-- 配置类型别名后这里可以简写Monster-- !-- update idupdateMonster parameterTypecom.linghu.entity.Monster--update idupdateMonster parameterTypeMonsterupdate monster set age#{age},birthday#{birthday},email#{email},gender#{gender},name#{name},salary#{salary}where id#{id}/update!-- resultType是个别名--select idgetMonsterById parameterTypeInteger resultTypeMonsterselect * from monster where id#{id};/select!-- 查询全部结果--select idfindAllMonster resultTypeMonsterselect * from monster;/select/mapper1.5、Test测试 package com.linghu.mapper;import com.linghu.entity.Monster; import com.linghu.util.MyBatisUtils; import org.apache.ibatis.session.SqlSession; import org.junit.Before; import org.junit.Test;import java.util.Date; import java.util.List;/*** author 令狐荣豪* version 1.0*/ public class MonsterMapperTest {private SqlSession sqlSession;private MonsterMapper monsterMapper;Beforepublic void init(){//通过SqlSessionFactory获取一个SqlSession会话sqlSession MyBatisUtils.getSqlSession();//获取MonsterMapper接口对象该对象实现了MonsterMappermonsterMappersqlSession.getMapper(MonsterMapper.class);System.out.println(monsterMapper.getClass());}// Test // public void t1(){ // System.out.println(t1()。。。); // }Testpublic void addMonster(){for (int i0;i3;i){Monster monster new Monster();monster.setAge(10i);monster.setBirthday(new Date());monster.setEmail(lignhuqq.com);monster.setGender(1);monster.setName(松鼠精i);monster.setSalary(1000i*10); // id不用设置monsterMapper.addMonster(monster);System.out.println(添加对象-monster);}//如果是增删改需要提交事务if (sqlSession!null){sqlSession.commit();sqlSession.close();}System.out.println(保存成功···);}Testpublic void delMonster(){monsterMapper.delMonster(2);//如果是增删改需要提交事务if (sqlSession!null){sqlSession.commit();sqlSession.close();}System.out.println(删除成功···);}Testpublic void updateMonster(){Monster monster new Monster();monster.setAge(200);monster.setBirthday(new Date());monster.setEmail(hspedusohu.com);monster.setGender(2);monster.setName(狐狸精);monster.setSalary(9234.89);monster.setId(4);monsterMapper.updateMonster(monster);if (sqlSession ! null) {sqlSession.commit();sqlSession.close();}System.out.println(修改 ok);}Testpublic void getMonsterById(){ // Monster monster new Monster();Monster monstermonsterMapper.getMonsterById(6);System.out.println(monstermonster);if (sqlSession ! null) {sqlSession.commit();sqlSession.close();}System.out.println(查询 ok);}Testpublic void findAllMonster(){ //查询全部结果ListMonster allMonster monsterMapper.findAllMonster();for (Monster monster :allMonster) {System.out.println(monster);}if (sqlSession ! null) {sqlSession.close();}System.out.println(查询 ok);} } 2、需要的Utils工具类 工具类MyBatisUtils.java package com.linghu.util;import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder;import javax.annotation.Resource; import java.io.IOException; import java.io.InputStream;/*** author 令狐荣豪* version 1.0* 这是一个工具类可以得到Sqlsession会话这个会话提供了执行SQL命令的方法CRUD*/ public class MyBatisUtils {private static SqlSessionFactory sqlSessionFactory;static {//静态代码块-初始化sqlSessionFactory对象try {/*** 指定资源文件*/String resourcemybatis-config.xml;//指定资源文件流InputStream inputStream Resources.getResourceAsStream(resource);//获取SqlSession实例sqlSessionFactorynew SqlSessionFactoryBuilder().build(inputStream);} catch (IOException e) {e.printStackTrace();}}/*** 返回一个SQLSession会话这个会话提供了执行SQL命令的方法CRUD* return*/public static SqlSession getSqlSession(){return sqlSessionFactory.openSession();} } 3、pom基础依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.linghu/groupIdartifactIdLinghu_Mybatis/artifactIdversion1.0-SNAPSHOT/versionpackagingpom/packagingmodules !-- 这里可以看到父项目下有哪些子项目--modulemybatisqucikstart/module/modulespropertiesmaven.compiler.source8/maven.compiler.sourcemaven.compiler.target8/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/properties!-- 导入依赖 --dependenciesdependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.49/version/dependencydependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.5.7/version/dependencydependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/version/dependency/dependencies!-- 配置resources-- !-- 配置目的将src/main/java目录和子目录和src/main/resources目录和子目录的 资源文件xml和properties在build项目时导出到对应的target目录下 --buildresourcesresourcedirectorysrc/main/java/directoryincludesinclude**/*.xml/include/includes/resourceresourcedirectorysrc/main/resources/directoryincludesinclude**/*.xml/includeinclude**/*.properties/include/includes/resource/resources/build/project4、数据库建表操作 CREATE DATABASE mybatis CREATE TABLE monster (id INT NOT NULL AUTO_INCREMENT, age INT NOT NULL, birthday DATE DEFAULT NULL, email VARCHAR(255) NOT NULL , gender TINYINT NOT NULL, name VARCHAR(255) NOT NULL, salary DOUBLE NOT NULL,PRIMARY KEY (id) ) CHARSETutf8
http://www.w-s-a.com/news/894781/

相关文章:

  • 网站开发工程师需要会写什么深圳网站(建设信科网络)
  • 台州网站搭建网站建设需求计划
  • 网站app免费下载软件大全大连百度推广哪家好
  • 网站建设的面试要求iis做的网站手机怎么访问
  • 定州市住房保障和城乡建设局网站上海网站建设排行
  • 网站发帖百度收录网站改版后不收录
  • 昆明建设局网站号码网站开发 浏览器兼容性
  • 湖北专业网站建设大全室内设计联盟app下载
  • 网站建设的意义和作用江苏城市建设档案馆网站
  • 华为云速建站贴心的广州网站建设
  • 网页网站开发公司天津seo推广
  • 网站线框图用什么做共享门店新增礼品卡兑换模式
  • 互联网建站是什么seo服务公司上海
  • 象山县城乡建设局网站做网站客户要求分期
  • 什么是网络营销型网站手机网站 图标
  • 全国新农村建设网站外包和劳务派遣哪个好
  • 网站权限控制什么软件做网站描述
  • 建网络商城网站wordpress关于
  • 专业网站建设分类标准重庆网站开发哪家专业
  • 织梦的网站关键词如何自己搭建微信小程序
  • 怎么做基金公司网站韩都衣舍网站建设ppt
  • 外贸网站模板aspnet网站开发 视频
  • 上海植物租赁做网站南浔网站建设
  • 怎么做学校网站做兼职工作上哪个网站招聘
  • 软件下载网站哪个比较好杭州开发小程序
  • 做网站都用什么技术学做名片的网站
  • 备案网站忘记密码乐装网
  • 电商扶贫网站建设淄博网站建设小程序
  • 网站群建设代理丰城网站建设公司
  • 青岛网站建设服务器wordpress迁移跳转原网站