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

网站首页制作方案做网站商机

网站首页制作方案,做网站商机,网站推广方法主要有,php网站代做文章目录 Apache-DBUtils实现CRUD操作1 Apache-DBUtils简介2 主要API的使用2.1 DbUtils2.2 QueryRunner类2.3 ResultSetHandler接口及实现类 3 JDBCUtil 工具类编写3.1 导包3.2 编写配置文件3.3 编写代码 4 BaseDao 编写 Apache-DBUtils实现CRUD操作 1 Apache-DBUtils简介 com… 文章目录 Apache-DBUtils实现CRUD操作1 Apache-DBUtils简介2 主要API的使用2.1 DbUtils2.2 QueryRunner类2.3 ResultSetHandler接口及实现类 3 JDBCUtil 工具类编写3.1 导包3.2 编写配置文件3.3 编写代码 4 BaseDao 编写 Apache-DBUtils实现CRUD操作 1 Apache-DBUtils简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库它是对JDBC的简单封装学习成本极低并且使用dbutils能极大简化jdbc编码的工作量同时也不会影响程序的性能。 API介绍 org.apache.commons.dbutils.QueryRunnerorg.apache.commons.dbutils.ResultSetHandler工具类org.apache.commons.dbutils.DbUtils API包说明 2 主要API的使用 2.1 DbUtils DbUtils 提供如关闭连接、装载JDBC驱动程序等常规工作的工具类里面的所有方法都是静态的。主要方法如下 public static void close(…) throws java.sql.SQLException DbUtils类提供了三个重载的关闭方法。这些方法检查所提供的参数是不是NULL如果不是的话它们就关闭Connection、Statement和ResultSet。public static void closeQuietly(…): 这一类方法不仅能在Connection、Statement和ResultSet为NULL情况下避免关闭还能隐藏一些在程序中抛出的SQLEeception。public static void commitAndClose(Connection conn)throws SQLException 用来提交连接的事务然后关闭连接public static void commitAndCloseQuietly(Connection conn) 用来提交连接然后关闭连接并且在关闭连接时不抛出SQL异常。public static void rollback(Connection conn)throws SQLException允许conn为null因为方法内部做了判断public static void rollbackAndClose(Connection conn)throws SQLExceptionrollbackAndCloseQuietly(Connection)public static boolean loadDriver(java.lang.String driverClassName)这一方装载并注册JDBC驱动程序如果成功就返回true。使用该方法你不需要捕捉这个异常ClassNotFoundException。 2.2 QueryRunner类 该类简单化了SQL查询它与ResultSetHandler组合在一起使用可以完成大部分的数据库操作能够大大减少编码量。 QueryRunner类提供了两个构造器 默认的构造器需要一个 javax.sql.DataSource 来作参数的构造器 QueryRunner类的主要方法 更新 public int update(Connection conn, String sql, Object… params) throws SQLException:用来执行一个更新插入、更新或删除操作。… 插入 public T insert(Connection conn,String sql,ResultSetHandler rsh, Object… params) throws SQLException只支持INSERT语句其中 rsh - The handler used to create the result object from the ResultSet of auto-generated keys. 返回值: An object generated by the handler.即自动生成的键值… 批处理 public int[] batch(Connection conn,String sql,Object[][] params)throws SQLException INSERT, UPDATE, or DELETE语句public T insertBatch(Connection conn,String sql,ResultSetHandler rsh,Object[][] params)throws SQLException只支持INSERT语句… 查询 public Object query(Connection conn, String sql, ResultSetHandler rsh,Object… params) throws SQLException执行一个查询操作在这个查询中对象数组中的每个元素值被用来作为查询语句的置换参数。该方法会自行处理 PreparedStatement 和 ResultSet 的创建和关闭。 2.3 ResultSetHandler接口及实现类 该接口用于处理 java.sql.ResultSet将数据按要求转换为另一种形式。 ResultSetHandler 接口提供了一个单独的方法Object handle (java.sql.ResultSet .rs)。 接口的主要实现类 ArrayHandler把结果集中的第一行数据转成对象数组。ArrayListHandler把结果集中的每一行数据都转成一个数组再存放到List中。**BeanHandler**将结果集中的第一行数据封装到一个对应的JavaBean实例中。**BeanListHandler**将结果集中的每一行数据都封装到一个对应的JavaBean实例中存放到List里。ColumnListHandler将结果集中某一列的数据存放到List中。KeyedHandler(name)将结果集中的每一行数据都封装到一个Map里再把这些map再存到一个map里其key为指定的key。**MapHandler**将结果集中的第一行数据封装到一个Map里key是列名value就是对应的值。**MapListHandler**将结果集中的每一行数据都封装到一个Map里然后再存放到List**ScalarHandler**查询单个值对象 3 JDBCUtil 工具类编写 3.1 导包 3.2 编写配置文件 创建 druid.properties 文件 注意文件名字不能改。 usernameroot passwordroot urljdbc:mysql://localhost:3306/jdbc_learn?useUnicodetruecharacterEncodingutf8rewriteBatchedStatementstrue driverClassNamecom.mysql.cj.jdbc.DriverinitialSize10 maxActive103.3 编写代码 创建 JDBCUtil.java 文件 /*** ClassName: JDBCUtil* Description: 操作数据库的工具类* Druid 数据库获取数据库的连接* DbUtils 关闭数据库资源** Create 2023/10/29 14:35* Version 1.0*/ public class JDBCUtil {/*** 使用 Druid 数据库连接池的配置文件的方式获取数据库的连接推荐** return* throws Exception*/// 创建一个 Druid 数据库连接池private static DataSource source null;static {try {Properties pros new Properties();// 读取配置文件InputStream is ClassLoader.getSystemClassLoader().getResourceAsStream(druid.properties);pros.load(is);source DruidDataSourceFactory.createDataSource(pros);} catch (Exception e) {throw new RuntimeException(e);}}public static Connection getConnection() throws Exception {Connection conn source.getConnection();return conn;}/*** 关闭资源操作增删改时使用* 使用 DbUtils 关闭资源* DbUtils.closeQuietly();* or* DbUtils.close();** param conn* param ps*/public static void closeResource(Connection conn, Statement ps) {try {DbUtils.close(conn);} catch (SQLException e) {throw new RuntimeException(e);}try {DbUtils.close(ps);} catch (SQLException e) {throw new RuntimeException(e);}}/*** 关闭资源的操作查询时使用* 使用 DbUtils 关闭资源* DbUtils.closeQuietly();* or* DbUtils.close();** param conn* param ps* param rs*/public static void closeResource(Connection conn, Statement ps, ResultSet rs) {// 7 资源关闭DbUtils.closeQuietly(conn);DbUtils.closeQuietly(ps);DbUtils.closeQuietly(rs);} } 4 BaseDao 编写 /*** ClassName: BaseDao* Description:* 利用 DbUtils 工具类实现 BaseDao* Create 2023/11/3 13:58* Version 1.0*/ public abstract class BaseDaoT {private QueryRunner queryRunner new QueryRunner();// 定义一个变量来接收泛型的类型private ClassT type;// 获取T的Class对象获取泛型的类型泛型是在被子类继承时才确定public BaseDao() {// 获取子类类型Class clazz this.getClass();// 获取父类的类型// getGenericSuperclass()用来获取当前类的父类的类型// ParameterizedType表示的是带泛型的类型ParameterizedType parameterizedType (ParameterizedType) clazz.getGenericSuperclass();// 获取具体的泛型类型 getActualTypeArguments获取具体的泛型的类型// 这个方法会返回一个Type的数组Type[] types parameterizedType.getActualTypeArguments();// 获取具体的泛型的类型this.type (ClassT) types[0];}/*** 通用的增删改操作** param sql* param params* return*/public int update(Connection conn, String sql, Object... params) {int count 0;try {count queryRunner.update(conn, sql, params);} catch (SQLException e) {throw new RuntimeException(e);}return count;}/*** 获取一个对象** param sql* param params* return*/public T getBean(Connection conn, String sql, Object... params) {T t null;try {t queryRunner.query(conn, sql, new BeanHandlerT(type), params);} catch (SQLException e) {throw new RuntimeException(e);}return t;}/*** 获取所有对象** param sql* param params* return*/public ListT getBeanList(Connection conn, String sql, Object... params) {ListT tList null;try {tList queryRunner.query(conn, sql, new BeanListHandler(type), params);} catch (SQLException e) {throw new RuntimeException(e);}return tList;}/*** 获取特殊值专门用来执行像 select count(*)...这样的sql语句** param sql* param params* return*/public Object getValue(Connection conn, String sql, Object... params) {Object count null;try {count queryRunner.query(conn, sql, new ScalarHandler(), params);} catch (SQLException e) {throw new RuntimeException(e);}return count;} } 附文章学习内容出自尚硅谷。
http://www.zqtcl.cn/news/522312/

相关文章:

  • 青岛崂山区网站建设广东企业网站建设多少钱
  • 男女做那个的小视频网站韩国儿童才艺网站建设模板
  • 餐饮品牌网站建设淮北论坛最新招聘
  • 给客户做网站网站自动适应屏幕
  • 人力资源培训与开发什么是网站优化
  • 制作 网站 盈利农村自建房设计图一层平房
  • 佛山住房和城乡建设厅网站wordpress图片外链转内链
  • 海东高端网站建设价格wordpress侧边栏淘宝客
  • 网站功能建设中页面wordpress让投稿
  • 学校网站 asp网站结构方面主要做哪些优化
  • 深圳做网站(信科网络)做网站需要多少资金
  • 做网站实例教程网站图片的作用
  • 网站建设展板营销渠道的三个类型
  • 用php做视频网站有哪些十大免费logo设计
  • 网站建设对于网络营销的意义微信购物商城
  • 基于个性化推荐的电商网站设计与实现网站 用户体验的重要性
  • 怎么用ajax做电商网站企业网查询是什么
  • 海淀企业网站建设张店学校网站建设公司
  • 专业微网站开发做购物网站怎么赚钱
  • 怎样做酒店网站ppt什么是企业网络营销平台
  • 科技部网站改版方案济南众筹网站建设
  • 中国城乡与住房建设部网站电子商务公司名字推荐
  • 设计参考网站有哪些wordpress 支付宝免签
  • 网站关键词排名优化应该怎么做外包加工网缝纫机外放加工活
  • 电影网站建设模板从传播的角度
  • 北京建网站的公司广州冼村和猎德村哪个最有钱
  • 成都网站建设有限公司济南j建设网
  • 一家网站建设公司需要什么资质互联网网站模块
  • 网站开发php支付接口网站平台建设缴纳什么税
  • 百度文库推广网站庆云网站seo