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

如何学好js网站开发推广运营是做什么的

如何学好js网站开发,推广运营是做什么的,手机网址在哪,外包做网站的会给你什么目录 一、MyBatis简介 二、搭建MyBatis (一)配置依赖 (二)log4j日志功能 (三)数据库配置文件——jdbc.properties (四)创建MyBatis的核心配置文件 (五)使用MyBatisX插件 三、项目其他配置搭建 (一)创建数据库连接工具类 (二)创建表 (三)创建数据库的实体类 (四)Use…

目录

一、MyBatis简介

二、搭建MyBatis

(一)配置依赖

(二)log4j日志功能

(三)数据库配置文件——jdbc.properties

(四)创建MyBatis的核心配置文件

(五)使用MyBatisX插件

三、项目其他配置搭建

(一)创建数据库连接工具类

(二)创建表

(三)创建数据库的实体类

(四)UserMapper接口

(五)UserMapper.xml

(六)测试类


一、MyBatis简介

        MyBatis是一款优秀的持久层框架,主要用于简化数据库操作,它支持自定义SQL、存储过程以及高级映射。

        它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。直接编写原生态sql,可以严格控制sql执行性能,灵活度高。

        MyBatis可以使用 XML或注解来配置和映射原生信息,将POJO映射成数据库中的记录,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。

下载地址:https://github.com/mybatis/mybatis-3 

二、搭建MyBatis

maven:3.8.1

MySQL:8

MyBatis:3.5.16

(一)配置依赖

pom.xml:

<dependencies><!-- Mybatis核心 --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.16</version></dependency><!-- junit测试 -->        <dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter-api</artifactId><version>5.11.3</version><scope>test</scope></dependency><!-- MySQL驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.33</version></dependency><!-- lombok --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.36</version><scope>provided</scope></dependency><!-- log4j日志 --><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency></dependencies>

(二)log4j日志功能

日志的级别 FATAL(致命)>ERROR(错误)>WARN(警告)>INFO(信息)>DEBUG(调试)

从左到右打印的内容越来越详细

src/main/resources/log4j.xml:如果有报红无需在意

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"><appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"><param name="Encoding" value="UTF-8"/><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS}%m (%F:%L) \n"/></layout></appender><logger name="java.sql"><level value="debug"/></logger><logger name="org.apache.ibatis"><level value="info"/></logger><root><level value="debug"/><appender-ref ref="STDOUT"/></root>
</log4j:configuration>

(三)数据库配置文件——jdbc.properties

src/main/resources/jdbc.properties:

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC
jdbc.username=root
jdbc.password=root

        指定serverTimezone=UTC参数的主要作用是解决时区问题,确保从数据库中检索的时间和日期值与Java应用程序中的时区设置一致。

(四)创建MyBatis的核心配置文件

核心配置文件主要用于配置连接数据库的环境以及MyBatis的全局配置信息

src/main/resources/mybatis-config.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><!--MyBatis核心配置文件中,标签的顺序:properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,reflectorFactory?,plugins?,environments?,databaseIdProvider?,mappers?--><!--引入properties文件--><properties resource="jdbc.properties"/><!-- 设置MyBatis的全局配置--><settings><!-- 将_自动映射为驼峰,例如emp_name:empName--><setting name="mapUnderscoreToCamelCase" value="true"/><!-- 开启延迟加载--><setting name="lazyLoadingEnabled" value="true"/></settings><!--设置类型别名--><typeAliases>      <!--以包为单位,将包下所有的类型设置默认的类型别名,即类名且不区分大小写--><package name="com.atguigu.mybatis.pojo"/></typeAliases><!--environments:配置多个连接数据库的环境属性:default:设置默认使用的环境的id--><environments default="development"><!--environment:配置某个具体的环境属性:id:表示连接数据库的环境的唯一标识,不能重复--><environment id="development"><!--transactionManager:设置事务管理方式属性:type="JDBC|MANAGED"JDBC:表示当前环境中,执行SQL时,使用的是JDBC中原生的事务管理方式,事
务的提交或回滚需要手动处理MANAGED:被管理,例如Spring--><transactionManager type="JDBC"/><!--dataSource:配置数据源属性:type:设置数据源的类型type="POOLED|UNPOOLED|JNDI"POOLED:表示使用数据库连接池缓存数据库连接UNPOOLED:表示不使用数据库连接池JNDI:表示使用上下文中的数据源--><dataSource type="POOLED"><property name="driver" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></dataSource></environment></environments><!--引入映射文件--><mappers><!--<mapper resource="mappers/UserMapper.xml"/>--><!--以包为单位引入映射文件,要求:1.mapper接口所在的包要和映射文件所在的包一致2.mapper接口要和映射文件的名字一致--><package name="com.atguigu.mybatis.mapper"/></mappers>
</configuration>

(五)使用MyBatisX插件

 

三、项目其他配置搭建

(一)创建数据库连接工具类

com.atguigu.mybatis.utils.SqlSessionUtils.SqlSessionUtils:

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 java.io.IOException;
import java.io.InputStream;public class SqlSessionUtils {public static SqlSession getSqlSession() {SqlSession sqlSession = null;try {InputStream is = Resources.getResourceAsStream("mybatis-config.xml");SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);sqlSession = sqlSessionFactory.openSession(true);} catch (IOException e) {e.printStackTrace();}return sqlSession;}
}

(二)创建表

create table t_user
(id       int auto_increment primary key,username varchar(20) null,password varchar(20) null,age      int         null,sex      char        null,email    varchar(50) null
);-- 插入数据
insert into t_user
values (null, '张三', '123456', 19, '男', 'abc456@163.com'),(null, '李四', '123456', 20, '女', 'abc123@163.com'),(null, '王五', '123456', 25, '男', '123xyz@qq.com');

(三)创建数据库的实体类

com.atguigu.mybatis.pojo.User:

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {private Integer id;private String username;private String password;private Integer age;private String sex;private String email;
}

(四)UserMapper接口

import com.atguigu.mybatis.pojo.User;
import org.apache.ibatis.annotations.Param;import java.util.List;public interface UserMapper {/*** 添加用户信息*/int insertUser(User user);/*** 根据id修改用户信息*/int updateUser(User user);/*** 根据id删除用户信息*/int deleteUser(Integer id);/*** 根据id查询用户信息*/User getUserById(Integer id);/*** 根据username查询用户信息*/List<User> getUserByUserNameAndPassword(@Param("username") String username, @Param("password")String password);/*** 查询所有用户信息*/List<User> getAllUser();
}

(五)UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--MaBatis面向接口编程的两个一致:1.映射文件的namespace要和mapper接口的全类名保持一致,通过接口就能找到映射文件2.映射文件中SQL语句的id要和mapper接口中的方法名一致,通过接口中的抽象方法就能找到SQL语句
-->
<mapper namespace="com.atguigu.mybatis.mapper.UserMapper"><!-- int insertUser(User user);--><insert id="insertUser">insert into t_uservalues (null, #{username}, #{password}, #{age}, #{sex}, #{email});</insert><!-- int updateUser(User user);--><update id="updateUser">update t_userset username = #{username},password = #{password},age      = #{age},sex      = #{sex},email    = #{email}where id = #{id};</update><!-- int deleteUser(Integer id);--><delete id="deleteUser">deletefrom t_userwhere id = #{id}</delete><!-- User getUserById(Integer id);--><!-- 当数据库字段和属性相同时,resultType="User" 可以不写 MyBatis可自动映射  --><select id="getUserById" resultType="User">select *from t_userwhere id = #{id}</select><!-- List<User> getUserByUserNameAndPassword(String username,String password);--><select id="getUserByUserNameAndPassword" resultType="User">select *from t_userwhere username = #{username}and password = #{password}</select><!-- List<User> getAllUser();--><select id="getAllUser" resultType="User">select * from t_user</select>
</mapper>

(六)测试类

com.atguigu.mybatis.test.MyBatisTest:

public class MyBatisTest {@Testpublic void testInsertUser() {SqlSession sqlSession = SqlSessionUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);int row = mapper.insertUser(new User(null, "jack", "789789", 26, "男", "123@qq.com"));System.out.println(row); // 1}@Testpublic void testUpdateUser() {SqlSession sqlSession = SqlSessionUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);int row = mapper.updateUser(new User(4, "jack", "777777", 23, "男", "12344@qq.com"));System.out.println(row); // 1}@Testpublic void testDeleteUser() {SqlSession sqlSession = SqlSessionUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);int row = mapper.deleteUser(4);System.out.println(row); // 1}@Testpublic void testGetUserById() {SqlSession sqlSession = SqlSessionUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);User user = mapper.getUserById(3);System.out.println(user);}// User(id=3, username=王五, password=123456, age=25, sex=男, email=123xyz@qq.com)@Testpublic void testGetUserByUserNameAndPassword() {SqlSession sqlSession = SqlSessionUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);List<User> userList = mapper.getUserByUserNameAndPassword("李四", "123456");userList.forEach(System.out::println);}// User(id=2, username=李四, password=123456, age=20, sex=女, email=abc123@163.com)@Testpublic void testGetAllUser() {SqlSession sqlSession = SqlSessionUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);List<User> userList = mapper.getAllUser();userList.forEach(System.out::println);}/*** User(id=1, username=张三, password=123456, age=19, sex=男, email=abc456@163.com)* User(id=2, username=李四, password=123456, age=20, sex=女, email=abc123@163.com)* User(id=3, username=王五, password=123456, age=25, sex=男, email=123xyz@qq.com)*/
}
http://www.tj-hxxt.cn/news/94964.html

相关文章:

  • 东莞手机建网站推广搜索引擎
  • aspcms网站无法打开青岛网站建设优化
  • 代工平台长春网站优化平台
  • 合肥专业手机网站制作价格网站排名查询站长之家
  • 做菠菜网站好赚吗网站搜索优化方法
  • 《30天网站建设实录》做网站的软件有哪些
  • 如何做网赌网站今天宣布疫情最新消息
  • 手机网站最简单三个步骤网络营销的8个基本职能
  • 西宁企业网站建设开发长沙百度推广开户
  • 哪些公司做网站维护的seo网络推广什么意思
  • 网站制作的收费北京网站优化哪家好
  • 网站开发阶段流程图搜索排名竞价
  • 做公众号商城原型的网站郑州网站seo
  • iis7.5部署网站网站建设的基本
  • 做微信公众号用什么网站网站快速排名服务商
  • 上海展览设计制作公司北京网站seo技术厂家
  • 全屏网站怎么做的引流推广神器
  • 石家庄桥西招聘 网站优化nba在线直播免费观看直播
  • wordpress制作视频站百度指数专业版app
  • .net做网站教程seo研究中心超逸seo
  • asp开源企业网站教程百度数据查询
  • 网站建设项目线下推广怎么做
  • 简单网站开发流程图长沙网络推广
  • 广东省广州市白云区人和镇淘宝关键词优化
  • 淄博桓台网站建设公司关键词优化公司哪家好
  • 整站优化网站报价网络营销名词解释
  • 网站域名备案证明郑州做网站的专业公司
  • 网站怎么做需要花钱吗大专网络营销专业好不好
  • vs怎么做网站年度关键词
  • 凡科建站网站怎样做软件下载网站优化是什么意思