加载中…
博文
标签:

spring

transactional

事物

分类: Java

在朋友一个项目中遇到这样的情况,项目使用的是springMVC,但是持久层使用的是mybatis
而且朋友封装了一些公用方法在dao层或者daoProvider层书写SQL,
但是我发现并没有像jdbcTemplate中的batchUpdate,
这样你在处理执行多条update语句的时候该怎么做呢

你可以在service层做处理使用@Transactional(spring 事物处理:注解方式)

    @Override
    @Transactional(rollbackFor=Exception.class)
    public void updateSalePrices(List> mapList) {
        for(Map map : mapList){
            Long id = Long.parseLong(map.get('id').toString());
            BigDecimal salePrice = new BigDecimal(map.get('salePrice').toString());
            storeDao.updateSalePrices(id,salePrice);
        }
标签:

spring

批量执行

分类: Java
spring jdbcTemplate 批量执行SQL语句(update insert delete)
直接赋上案列代码

   
    public void saveObj(final List list)throws Exception{
        String sql = 'insert into t_table(value1,value2,value3,value4,value5) values(?,?,?,?,?)';
        try{
            this.getJdbcTemplate().batchUpdate(sql, new BatchPreparedStatementSetter(){
                public int getBatchSize() {
                    return taInstswimwayList.size();
                }
                public void setValues(PreparedStatement pst, int i) throws SQ
(2016-01-14 17:43)
标签:

like

下划线

oracle

分类: 数据库

 

在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。

SQL 通配符必须与 LIKE 运算符一起使用。

在 SQL 中,可使用以下通配符:

通配符 描述
% 替代一个或多个字符
_ 仅替代一个字符
[charlist] 字符列中的任何单一字符

[^charlist]

或者

[!charlist]

不在字符列中的任何单一字符

但是如果你像模糊查询内容中带 下划线 “_” 那就需要这样做:

方式1:escape转义

   SELECT last_name
    FROM employees
    WHERE last_name LIKE '%A\_B%' ESCAPE '\';

方式2:instr函数辅助判断

select * from t where instr(x,'_')!=0;

(备注:使用instr函数判断字段中是否包含“_”,如果包

标签:

java

zip

分类: Java

通过java压缩文件方式一共有三种,在这里,给大家介绍一下(主要讲解java.util.zip方式实现的这种)

这三种方式分别是:

1、jdk自带的包java.util.zip.ZipOutputStream

2、org.apache.tools.zip.ZipOutputStream

3、org.apache.tools.ant.taskdefs.Zip

 

其中主要讲解第一种的代码构成:

 

比如需要某个路径下多个文件压缩为一个zip文件

代码如下:

// 把excel压缩到一个zip文件

public static void excelToZip(Map tmap) throws Exception {
   String files [] = new String[3];
   for(int i=0;i<3;i++){
    files[i]=path+i+'.xls';
   }
   zipFiles(files,path+i+'.zip');
 }
 //压缩方法
 public static boolean zipFiles(String[] files, String zipfile) throws Exception {
  boolean bf = true;
  File ff = new File(zipfile);
  if (!ff.exists())

标签:

数据库

oracle

分类: 数据库
根据如下SQL  可以实现  ---


oracle 一个字段存放逗号分隔数据 查询后以逗号分隔 转为多行数据

select a,b,c from
    (with test as (select 'aaa' a,'bbb' b,'1,2,3' c from dual)
    select a,b,substr(t.ca,instr(t.ca, ',', 1, c.lv) + 1,instr(t.ca, ',', 1, c.lv + 1) - (instr(t.ca, ',', 1, c.lv) + 1)) AS c
    from (select a,b,',' || c || ',' AS ca,length(c || ',') - nvl(length(REPLACE(c, ',')), 0) AS cnt FROM test) t,
    (select LEVEL lv from dual CONNECT BY LEVEL <= 100) c where c.lv <= t.cnt )




标签:

it

分类: 数据库
 1.如果加上“full=y”,将整个数据库全部导出,需要特殊的权限(具体什么权限没研究过),一般用system用户就足够了,普通用户是不可以的
2.不加“full=y”,默认导出连接数据库的用户数据库对象,比如:exp aaa/abc@oracle file=a.dmp,导出aaa模式下的所有数据库对象
3.你说的有多个用户,可以使用system来指定导出哪个用户的数据库对象,比如:exp aaa/abc@oracle file=a.dmp owner=(bbb,ccc),普通用户是不可以指定owner的
4.数据有多个实例的情况,这个要看你“@”后面是什么,如果@oracle,则在oracle实例上进行导出,@ora,则在ora实例上进行导出
标签:

it

分类: 数据库
修改计算机名称 后在Eclipse项目中中, 连接oracle出错问题:

错误日志:

1 : admin/1登录,失败,后台提示;
 [ DRM NOTICE ] :conf/supportDB.properties  was found in file:/~/conf/supportDB.properties  when find in OP_SYS_PATH!
 java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
 凭经验是 程序连接oracle出错,肯能oracle服务没启动.

解决:

1. 查看服务:发现关于oracle的:

http://dl.iteye.com/upload/attachment/473885/b00a8d9a-859c-3439-ab7f-e1d5ff7c9ded.jpeg

~Listener的服务没有启动, 点击启动, 提示,无法启动.

2. 想起昨天修改过计算机名, 导致以前的连接配置失效->

2.1在C:\oracle\product\10.1.0\Db_1\network\admin\listener.ora 中修改(oracle安装目录)

Sql代码
标签:

sum

nvl

it

分类: UI

在正常情况下,所有行的数据不全为空时:

Sql代码
  1. select sum(nvl(1,1)) from dual ;   
  2. select nvl(sum(1),1) from dual  
 select sum(nvl(1,1)) from dual ; select nvl(sum(1),1) from dual ; 

 结果是一样的。

 

在所有行数据都为空时:

Sql代码
  1. select sum(nvl(
标签:

unicode

it

分类: 计算机
        A键-65  
Add     加号键   107  
Alt     ALT组合键     262144  
Apps   应用程序键(Microsoft   Natural   Keyboard,人体工程学键盘)     93  
Attn     ATTN   键     246  
     键       66  
Back     BACKSPACE   键     
BrowserBack     浏览器后退键(Windows   2000   或更高版本)   166  
BrowserFavorites     浏览器“收藏夹”键(Windows   2000   或更高版本)   171  
BrowserForward     浏览器前进键(W
  
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有