代码拉取完成,页面将自动刷新
同步操作将从 yydf/easy-jdbc 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
一个支持高并发的jdbc链接池,体积小、速度快,目前只支持mysql
请将mysql的wait_timeout设置尽可能小,如wait_timeout=32
max_connections=1000
datasource.maxActive=16 为连接不够时,最大允许上限
easy-fast-jdbc会根据调用频率,自动增加连接
datasource.maxIdle=2 为初始化连接数
project.entities=com.test.entity.* 为包下所有类
project.entities=com.test.entity.a,com.test.entity.b 为a和b两个类
请将jdbc.properties放在src目录下,不然无法读取配置
JDBCDataSource dataSource = JDBCDataSource.getInstance(); FastSession session = FastSession.getInstence(dataSource);
<bean id="dataSource" class="com.geneqiao.jdbc.pool.JDBCDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/fastadmin" />
<property name="username" value="test" />
<property name="password" value="123456" />
<property name="maxIdle" value="1" />
<property name="maxActive" value="8" />
</bean>
//Dao层 private FastSession session; @Resource private JDBCDataSource dataSource; public void setDataSource(JDBCDataSource ds) { this.dataSource = ds; } public FastSession getSession() { if (session == null) session = FastSession.getInstence(dataSource); return session; }
//查询列表 session.Query(GnqBrowseRecord.class, "select * from gnq_browse_record"); //查询单条 session.Single(GnqBrowseRecord.class, "select * from gnq_browse_record where browse_id=?", 1); //查询单列 session.QueryList("select browse_id from gnq_browse_record"); //查询单值 session.getSingle("select browse_id from gnq_browse_record where browse_id=?", 1); //查询键值对 session.QueryMap("select browse_id,browse_num from gnq_browse_record"); //增、删、改 GnqBrowseRecord gbr = new GnqBrowseRecord(); gbr.setUserId(1); gbr.setTargetId(2); gbr.setBrowseNum(1); gbr.setBrowseTime(new Date()); gbr.setTargetType(0); session.save(gbr); //保存对象 System.out.println("browse_id =========" + gbr.getBrowseId()); gbr.setBrowseId(gbr.getBrowseId()); session.update(gbr, false); //通过主键更新所有字段 session.updateNotNull(gbr); //通过主键更新不为NULL字段 session.delete(gbr); //通过所有不为NULL字段删除记录 //执行SQL session.Execute("delete from gnq_browse_record where browse_id=?", 1); //批量执行SQL List sqls = new ArrayList<>(); sqls.add(Sql.parse("delete from gnq_browse_record where browse_id=?", 1)); sqls.add(Sql.parse("delete from gnq_browse_record where browse_id=?", 2)); session.execute(sqls, true); //在同一事务中执行
// 批量事务处理 Connection conn = null; try { //获取事务连接 conn = session.getConnection(); Object obj = session.getSingle(conn, "select browse_id from gnq_browse_record where browse_id=18"); session.Execute(conn, "delete from gnq_browse_record where browse_id=?", obj); conn.commit();//最后事务必须提交,否则会产生未知错误 } catch (SQLException e) { //回滚 JDBCDataSource.rollback(conn); logger.error("执行事务失败", e); } finally { // 必须关闭连接 JDBCDataSource.close(conn); }
Map map = new HashMap(); List paramaters = new ArrayList(); paramaters.add(new ProcdureParamater(1, name)); paramaters.add(new ProcdureParamater(2, password)); paramaters.add(new ProcdureParamater(3, ip)); paramaters.add(new ProcdureParamater(4)); paramaters.add(new ProcdureParamater(5)); paramaters.add(new ProcdureParamater(6)); paramaters.add(new ProcdureParamater(7)); if (getJDBCUtils().RunProcdure("{call procManagerLogin(?,?,?,?,?,?,?)}", paramaters)) { int errId = paramaters.get(3).getInt(); if(errId == 0) { map.put("userId", paramaters.get(4).getInt()); map.put("roleId", paramaters.get(5).getInt()); map.put("roleName", paramaters.get(6).getValue()); } map.put("errId", errId); return map; } map.put("errId", 999001); return map;
下载生成工具,打开exe文件,连接-点击数据表-保存(ctrl+s)或保存全部
多个数据库,配置两个datasource即可,例如jdbc.properties,jdbc2.properties
然后分别初始化,可同时使用
JDBCDataSource dataSource = JDBCDataSource.getInstance(); JDBCDataSource dataSource2 = JDBCDataSource.getInstance("jdbc2.properties"); FastSession session = FastSession.getInstence(dataSource); FastSession session2 = FastSession.getInstence(dataSource2);
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。