??xml version="1.0" encoding="utf-8" standalone="yes"?>1769国产精品,九色porny自拍视频在线观看,caopeng在线http://www.aygfsteel.com/iamlibo/archive/2013/12/19/407775.htmlLiboLiboThu, 19 Dec 2013 08:17:00 GMThttp://www.aygfsteel.com/iamlibo/archive/2013/12/19/407775.htmlhttp://www.aygfsteel.com/iamlibo/comments/407775.htmlhttp://www.aygfsteel.com/iamlibo/archive/2013/12/19/407775.html#Feedback0http://www.aygfsteel.com/iamlibo/comments/commentRss/407775.htmlhttp://www.aygfsteel.com/iamlibo/services/trackbacks/407775.html使用maven工程Q?/span>pom.xml文g如下
<dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>3.2.4.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>3.2.4.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
            <version>1.8.5</version>
        </dependency>

        <dependency>
            <groupId>org.hibernate.javax.persistence</groupId>
            <artifactId>hibernate-jpa-2.0-api</artifactId>
            <version>1.0.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.2.8.Final</version>
        </dependency>

        <!-- for JPA, use hibernate-entitymanager instead of hibernate-core -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.2.8.Final</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.27</version>
        </dependency>
       <!-- <dependency>
            <groupId>cglib</groupId>
            <artifactId>cglib</artifactId>
            <version>3.0</version>
        </dependency>
-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>3.2.4.RELEASE</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

dao接口如下Q?br />
package cn.test.dao;

/**
 * Created by libo on 13-12-19.
 
*/
public interface IDao {

    void save(Object entity);
}

dao实现cd下:
package cn.test.dao;

import org.springframework.stereotype.Component;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

/**
 * Created by libo on 13-12-19.
 
*/
@Component
public class DaoJpaImpl implements IDao {

    @PersistenceContext
    private EntityManager entityManager;

    @Override
    public void save(Object entity) {
        entityManager.persist(entity);
    }
}

service 接口Q?br />
package cn.test.service;

import cn.test.entity.User;

/**
 * Created by libo on 13-12-19.
 
*/
public interface UserService {
    void save(User user);
}

service 实现c:
package cn.test.service;

import cn.test.dao.IDao;
import cn.test.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

/**
 * Created by libo on 13-12-19.
 
*/
@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private IDao iDao;

    @Override
    //@Transactional(propagation= Propagation.REQUIRED)
    @Transactional(readOnly = false)
    public void save(User user) {
        iDao.save(user);
    }
}
实体c:
package cn.test.entity;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;

/**
 * Created by libo on 13-12-19.
 
*/
@Entity
@Table(name = "myUser")
public class User implements Serializable{

    @Id
    private String id;

    private String name;

    private int age;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

spring-config.xml 其中
task相关内容可以删除
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:tx
="http://www.springframework.org/schema/tx"
       xmlns:task
="http://www.springframework.org/schema/task"
       xmlns:context
="http://www.springframework.org/schema/context"
       xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation
="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/task
            http://www.springframework.org/schema/task/spring-task-3.1.xsd http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd"
>
    <context:annotation-config/>
    <context:component-scan base-package="cn.test"/>
    <task:annotation-driven/>

    <bean id="em" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="packagesToScan" value="cn.test.entity"/>
        <property name="jpaVendorAdapter">
            <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"/>
        </property>
        <property name="jpaProperties">
            <props>
                <prop key="hibernate.hbm2ddl.auto">update</prop>
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
            </props>
        </property>
    </bean>

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/spring_jpa"/>
        <property name="username" value="root"/>
        <property name="password" value="123456"/>
    </bean>

    <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="em"/>
    </bean>
    <!-- 可以使用@Transactional配置事务 -->
    <tx:annotation-driven transaction-manager="transactionManager"/>

    <bean id="persistenceExceptionTranslationPostProcessor"
          class
="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>
</beans>

试c:
package cn.test.service;

import cn.test.entity.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

/**
 * Created by libo on 13-12-19.
 
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:spring-config.xml")
public class UserServiceImplTest {

    @Autowired
    private UserService userService;

    @Test
    public void testSave() throws Exception {
        User user = new User();
        user.setId("u_id");
        user.setName("u_name");
        user.setAge(23);
        userService.save(user);
    }
}

q行Junit试可以了。连接的是MySQL数据?br />
end.


Libo 2013-12-19 16:17 发表评论
]]>
免安装Oracle客户端用PLSQLq接Oraclehttp://www.aygfsteel.com/iamlibo/archive/2011/05/17/350430.htmlLiboLiboTue, 17 May 2011 11:44:00 GMThttp://www.aygfsteel.com/iamlibo/archive/2011/05/17/350430.htmlhttp://www.aygfsteel.com/iamlibo/comments/350430.htmlhttp://www.aygfsteel.com/iamlibo/archive/2011/05/17/350430.html#Feedback0http://www.aygfsteel.com/iamlibo/comments/commentRss/350430.htmlhttp://www.aygfsteel.com/iamlibo/services/trackbacks/350430.html免安装Oracle客户端用PLSQLq接Oracle

Ҏ一Q?

大家都知道,用PL/SQLq接OracleQ是需要安装Oracle客户端Y件的。有没要惌不安装Oracle客户端直接连接Oracle呢?

其实我一直想q样做,因ؓq个客户端实在太让h讨厌了!Q!不但会安装一个JDKQ而且q会把自己放在环境变量的最前面Q会造成不小的麻烦?

其实我之前问q很多h的,但是他们都说一定需要安装Oracle客户端的.......直到昨天无意中发C以下q个ҎQ?

只需要在Oracle下蝲一个叫Instant Client Package的Y件就可以了,q个软g不需要安装,只要解压可以用了,很方便,q重装了系l还是可以用的?

下蝲q个QInstant Client Package - Basic包。然后解压到L目录Q在q个目录下徏立NETWORK文g夹,接着再这个文件夹下再建立ADMIN文g夹,然后建立tnsnames.ora文gQ内容如下:

oracledata = 

(DESCRIPTION = 

(ADDRESS_LIST = 

(ADDRESS = (PROTOCOL = TCP)(HOST = yourhostIp )(PORT = 1521)) 

(CONNECT_DATA = 

(SERVICE_NAME = yourSID   ) 

)

q?里根据自q实际情况配置。接着打开PL/SQLQ在perference里面讄OCI Library和Oracle_homeQ我的设|是 OCI Library=c:\oracleclient\oci.dll,Oracle_home=c:\oracleclient?

Ҏ自己的实际情况配|,其实是刚才下蝲下来的那个包的\径。还有最后一个问题,需要设|一个字W集Q这h询出来的数据才不会是qQ写一个批处理pldev. bat攑ֈpl安装目录下,内容如下Q?

    set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK  

    PLSQLDev.exe  

q个字符集,指的是服务器端的字符集,h据实际情况配|?

最后,只要双击q个批处理,再填写帐号和密码可以了

或者在windows pȝ环境变量中加?nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK



Libo 2011-05-17 19:44 发表评论
]]>
用DBUnit 做数据备份恢复工?/title><link>http://www.aygfsteel.com/iamlibo/archive/2009/03/14/259731.html</link><dc:creator>Libo</dc:creator><author>Libo</author><pubDate>Sat, 14 Mar 2009 08:33:00 GMT</pubDate><guid>http://www.aygfsteel.com/iamlibo/archive/2009/03/14/259731.html</guid><wfw:comment>http://www.aygfsteel.com/iamlibo/comments/259731.html</wfw:comment><comments>http://www.aygfsteel.com/iamlibo/archive/2009/03/14/259731.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/iamlibo/comments/commentRss/259731.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/iamlibo/services/trackbacks/259731.html</trackback:ping><description><![CDATA[用DBUnit 做数据备份恢复工?br /> <br /> DBunit(<a title="http://dbunit.sourceforge.net/" id="j-pr">http://dbunit.sourceforge.net/</a> )是一个非常好的数据库unitpd工具.<br /> 一般都是用它在试的时候管理数据库。我们可以发挥一下,用它做一个备份和恢复的数据库理工具?br /> <br /> 以mysqlZQ正好现在还没有找一个好用的mysql备䆾和恢复工兗这个是在代码中理不是用ant的方式?br /> <br /> 主要是用到核心组Ӟ<a >IDatabaseConnection</a>?a >IDataSet</a>?a >DatabaseOperation</a> ?br /> <br /> 先看代码Q?br />    /**<br />      * 导出数据到指定文?br />      * @param file 一个标准的java.io.File<br />      * @param connection  一个标准的java.sql.Connection<br />      * @throws org.dbunit.DatabaseUnitException<br />      */<br />     public static void exportRoom(File file, Connection connection) throws DatabaseUnitException, IOException {<br />         IDatabaseConnection databaseConnection = new DatabaseConnection(connection);<br />         QueryDataSet dataSet = new QueryDataSet(databaseConnection);<br />         dataSet.addTable("room");<br />         Writer writer = new FileWriter(file);<br />         XmlDataSetWriter w = new XmlDataSetWriter(writer);<br />         w.write(dataSet);<br />         writer.flush();<br />         writer.close();<br />     }<br /> 在这个方法中指定了一个表?room"Q如果有多个表可以通过参数或其他的方式按照q种方式l箋增加。这个文件是XML格式的。具体格式说明或其他格式参见http://dbunit.sourceforge.net/components.html#databaseconnection<br /> <br />     /**<br />      * 导入数据到ROOM?br />      * @param file  一个标准的java.io.File<br />      * @param connection 一个标准的java.sql.Connection<br />      */<br />     public static void importRoom(File file, Connection connection) throws DatabaseUnitException, IOException, SQLException {<br />         IDataSetProducer dataSetProducer = new XmlProducer(FileHelper.createInputSource(file));<br />         IDataSet dataSet = new CachedDataSet(dataSetProducer);<br />         IDatabaseConnection databaseConnection = new DatabaseConnection(connection);<br />         DatabaseOperation operation = DatabaseOperation.CLEAN_INSERT;<br />         DatabaseOperation.TRANSACTION(operation);<br />         operation.execute(databaseConnection, dataSet);<br />         DatabaseOperation.CLOSE_CONNECTION(operation);<br />     }<br /> q个Ҏ可以把上面生成的XML文g导入到数据库中,如果是其他格式的文g只需要更换IDataSetProducer的实现类可以了。具体格式请参见APIDOC<br /> 在这个方法里使用了事务控Ӟ保证数据的一致性?br /> <br /> 有了q两个方法我们就可以再发挥一下,然后为客h供一个备份恢复数据的工具了。如果再加入压羃文g的支持就更加完美了?br /> <br /> <br /> <br /> <br /> <br /> <img src ="http://www.aygfsteel.com/iamlibo/aggbug/259731.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/iamlibo/" target="_blank">Libo</a> 2009-03-14 16:33 <a href="http://www.aygfsteel.com/iamlibo/archive/2009/03/14/259731.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>dbunit支持多种格式导入导出http://www.aygfsteel.com/iamlibo/archive/2008/12/09/245335.htmlLiboLiboTue, 09 Dec 2008 13:10:00 GMThttp://www.aygfsteel.com/iamlibo/archive/2008/12/09/245335.htmlhttp://www.aygfsteel.com/iamlibo/comments/245335.htmlhttp://www.aygfsteel.com/iamlibo/archive/2008/12/09/245335.html#Feedback1http://www.aygfsteel.com/iamlibo/comments/commentRss/245335.htmlhttp://www.aygfsteel.com/iamlibo/services/trackbacks/245335.htmlDbUnit试数据库非常方便,但我更常用的功能是它的数据库导入和导出。尤其在是做一个项目初始数据的时候?/p>

但是一直有一个问题困扰着Q?/p>

有一个表TQ有字段A,B,C三列?/p>

最常见的方式是用ANT来执行Q务,数据保存到xml文g?/p>

<target name="export" depends="set.dataBase.mysql">
  
<dbunit driver="${dataBase.driver}" supportBatchStatement="true" url="${dataBase.url}/${dataBase.name}" userid="${dataBase.user}" password="${dataBase.user.password}" classpathref="classpath">
   
<operation type="INSERT" src="${data.dir}/a.xml" />
  
</dbunit>
 
</target>

a.xml文g格式如下:

<?xml version='1.0' encoding='UTF-8'?>
<dataset>
<a="1" b="1" c="1"/>
<a="2" b="2" c="2"/>
</dataset>

q个时候如果所有字D都不ؓI好办。可以正常导入导出。但是当有一个字DؓI的时候就不好办了?/p>

为分两种情况Q第一行数据某字段为空和非W一行数据某字段为空

当非W一行数据某字段为空时XML文g是这L

<?xml version='1.0' encoding='UTF-8'?>
<dataset>
<a="1" b="1" c="1"/>
<a="2" b="2" >
</dataset>

表示W二行c字段为空。如果第一为空的时候XML文g变成q样

<?xml version='1.0' encoding='UTF-8'?>
<dataset>
<a="1" b="1" />
<a="2" b="2" c="2"/>
</dataset>

可是导出到数据库q一列都为空。第二行以后的这一列的非空字段没有导入q去?/p>

q个时候就不能使用q个文g格式Q查看DBunit源才知道q个格式叫flat. dbunitq支持其他几U格式数据:xml、dtd、csv、xls。这里的xml文g的格式是q样的:

<!DOCTYPE dataset SYSTEM "dataset.dtd">
<dataset>
    
<table name="TEST_TABLE">
        
<column>COL0</column>
        
<column>COL1</column>
        
<column>COL2</column>
        
<row>
            
<value>row 0 col 0</value>
            
<value>row 0 col 1</value>
            
<value>row 0 col 2</value>
        
</row>
        
<row>
            
<null/>
            
<value>row 1 col 1</value>
            
<null/>
        
</row>
    
</table>
    
<table name="SECOND_TABLE">
        
<column>COLUMN0</column>
        
<column>COLUMN1</column>
        
<row>
            
<value>row 0 col 0</value>
            
<value>row 0 col 1</value>
        
</row>
    
</table>
    
<table name='EMPTY_TABLE'>
        
<column>COLUMN0</column>
        
<column>COLUMN1</column>
    
</table>
</dataset>

q样可以指定ؓI的字段了?/p>

用v来也单,是加一个format参数。(才知道ؓ什么老提Cformat 为空Q因为默认的是flatQ?/p>

<target name="export" depends="set.dataBase.mysql">
  
<dbunit driver="${dataBase.driver}" supportBatchStatement="true" url="${dataBase.url}/${dataBase.name}" userid="${dataBase.user}" password="${dataBase.user.password}" classpathref="classpath">
   
<operation type="INSERT" src="${data.dir}/a.xml" format="xml"/>
  
</dbunit>
 
</target>
<target name="export" depends="set.dataBase.mysql">
  
<dbunit driver="${dataBase.driver}" supportBatchStatement="true" url="${dataBase.url}/${dataBase.name}" userid="${dataBase.user}" password="${dataBase.user.password}" classpathref="classpath">
   
<export dest="c:/a.xml" format="xml">
    
<table name="a" />
   
</export>
  
</dbunit>
 
</target>

现在可以自q导入导出?



Libo 2008-12-09 21:10 发表评论
]]>
վ֩ģ壺 | Դ| ɽ| | Ͻ| ƽ| տ| | ̨| | | ƫ| | ɽ| | ˫| | | | | | ˮ| | | | | ƽң| ³| | Ϫ| | | | | | | ˫| пǰ| ξ| | |