spring数据源配置问题

最近弄一个简单的系统,却出现了问题。。。
在spring中配置数据源后,查询时候老是这个报错,java.sql.SQLException: ORA-01017: invalid username/password; logon denied。用普通的jdbc方式却没出现问题。数据库账号密码也没有问题plsql可以登陆,也没被锁住。请大神帮忙看下,谢谢。
使用的是jdk1.6,oracle11g,jar包ojdbc6.jar。截图如下:

spring数据源配置:
spring数据源配置

数据库版本:
数据库版本

使用jar包:
使用jar包

报错:
报错

使用jdbc方式却可以执行:
使用jdbc方式却可以执行

4个回答

 我也认为是datasource,用户名密码的配置问题,数据库都logon denied ,换一个class="org.apache.commons.dbcp.BasicDataSource" ,或者把用户名和密码加在driverUrl后面链接试试
cylszh
cylszh 可以了。谢谢大神,换了个class=org.apache.commons.dbcp.BasicDataSource,配置如下:<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@172.16.4.157:1521:bztest" /> <property name="username" value="ssctest" /> <property name="password" value="ssctest" /> </bean>,参考这个的:http://hackpro.iteye.com/blog/1037376
3 年多之前 回复

试试这个 不知道为什么我看不到我之前的回复,我看到都是空,好奇怪。

将配置中的user改成username。。。为什么回复几次都是空,crying....

cylszh
cylszh 启动就报错了。
3 年多之前 回复
cylszh
cylszh 报错啊:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [applicationContext.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'username' of bean class [org.logicalcobwebs.proxool.ProxoolDataSource]: Bean property 'username' is not writable or has an invalid setter method.
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
请问各位大牛spring怎么配置多数据源
现在在一个项目里面有多个数据库,在配置数据源时应该怎么配置。 1、将多个数据源都配置在applicationContext.xml文件里面? 2、写多个单独的数据源配置文件,再统一引入applicationContext.xml中么? 有例子的方便给个例子我。感谢。
spring+hibernate配置多数据源动态切换,java实体如何和各个数据库实例映射?
我的一个javaweb项目,需要用到多个数据源,都是oracle实例,我用spring配置了数据源的动态切换。使用AOP在service层做拦截,然后用注解DataSource来标示所要选择的数据源。现在我有一个问题,就是我用数据库操作时,hibernate是面向对象的,我该如何将不同的java实体映射到不同的数据源上(不同数据库表结构不同)。比如一个product包中的java实体映射到数据库1,cart包中的实体映射到数据库2。如何做到呢?
关于spring多数据源配置
根据spring扫描包的不同,选择不同的数据源,主要两种数据库,一个是oracle,一个是mongodb,请问spring该如何配置数据源呢?请求各路大神,帮帮小弟,谢谢啦!!! __
spring 配置数据源出问题
spring 配置数据源的时候,org下面划红线提示<statement>expected,got 'org' close,p:driverClassName,p:username等都报错Attribute p:driverclassname is not allowed here 已经解决,重新装了软件
spring cloud config 如何动态更新数据库的数据源?
数据库的配置文件由config同一管理,考虑到可能会换数据库数据源,就需要动态的刷新数据 库的数据源。
Spring访问数据库问题
Dao的内容 public class StudentDao extends JdbcDaoSupport{ public void insertStudent(Student student) { String sql = "insert into test(name) values(?)"; this.getJdbcTemplate().update(sql,student.getName()); } } 业务代码 public class StudentImp implements IStudentImp{ private StudentDao dao; public void setDao(StudentDao dao) { this.dao = dao; } public void add(Student student){ dao.insertStudent(student); } } 配置文件: <!-- 连接数据源注册 --> <bean id="myDatasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/studentdao"/> <property name="username" value="root"/> <property name="password" value="123456"/> </bean> <!--注册Dao --> <bean id="mydao" class="com.spring.dao.StudentDao"> <property name="dataSource" ref="myDatasource"></property> </bean> <!-- 注册service --> <bean id="myservice" class="com.spring.service.StudentImp"> <property name="dao" ref="mydao"/> </bean> 测试代码: public void testadd(){ ApplicationContext ac = new ClassPathXmlApplicationContext("ApplicationContext.xml"); IStudentImp studentimp = (IStudentImp)ac.getBean("myservice"); Student student = new Student("jacke"); studentimp.add(student); } 报错: ![图片说明](https://img-ask.csdn.net/upload/201607/25/1469446843_75554.png) java.lang.NoClassDefFoundError: Could not initialize class org.springframework.jdbc.core.StatementCreatorUtils at org.springframework.jdbc.core.ArgumentPreparedStatementSetter.cleanupParameters(ArgumentPreparedStatementSetter.java:72) at org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:924) at org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:909) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:644) at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:909) at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:970) at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:980) at com.spring.dao.StudentDao.insertStudent(StudentDao.java:12) at com.spring.service.StudentImp.add(StudentImp.java:13) at com.spring.test.Test.testadd(Test.java:16) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:176) at junit.framework.TestCase.runBare(TestCase.java:141) at junit.framework.TestResult$1.protect(TestResult.java:122) at junit.framework.TestResult.runProtected(TestResult.java:142) at junit.framework.TestResult.run(TestResult.java:125) at junit.framework.TestCase.run(TestCase.java:129) at junit.framework.TestSuite.runTest(TestSuite.java:255) at junit.framework.TestSuite.run(TestSuite.java:250) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 到底哪里出问题了啊! 在跟断点的时候,里面有一个异常: EXCEPTION: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed. 但到底是如何能解决实在没法,求大神帮忙
JSPXCMS系统里面的Spring Data JPA配置2个数据源
JSPXCMS系统里面的Spring Data JPA配置2个数据源
spring quartz数据源的问题
spring中配置了两个数据源:一个是默认的dataSource;另一个是dataSourceShare. 配置了两个spring quartz定时器,每个定时器分别要操作不同的数据源对应的数据库中的UserInfo表 各自的service和dao中也是分别注入的各自的datasource,但是连接的时候总是操作的是默认的dataSource数据源。 求高手帮忙啊
spring+hibernate4配置多个数据源问题
配置了2个数据源,对应了2个sessionFactory。默认使用的sessionFactory由spring自动创建线程的,但是另外的一个,创建后,在执行sql时直接使用session.getCurrentSession()线程出现问题:No Session found for current thread,能否通过配置自动创建线程,并且使用后自动回收。使用session.openSession()可以,但是要手动关闭,和手动开启,并且如果使用这种方式,感觉配置1个sessionFactory就可以了,只要切换数据源的方法使用openSession()就可以,有没有办法让spring对两个不同的都进行管理。
请教:spring配置mysql/access多数据源的动态切换问题,急用,十分感谢!
请教:spring配置mysql/access多数据源在切换到access数据源时抛No Session found for current thread错误是怎么回事?请大侠详加指导,十分感谢,急用!我的配置文件如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:util="http://www.springframework.org/schema/util" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:task="http://www.springframework.org/schema/task" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd" default-autowire="byName" default-lazy-init="false"> <!-- 自动扫描dao和service包(自动注入) --> <context:component-scan base-package="org.framework.core.common.dao.*" /> <context:component-scan base-package="org.framework.core.common.service.*" /> <!-- 加载service,此时要排除要controller,因为controller已经spring-mvc中加载过了 --> <context:component-scan base-package="test.*,framework.*"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan> <!-- 引入属性文件 --> <context:property-placeholder location="classpath:dbconfig.properties" /> <!-- 配置数据源1 --> <bean name="mysqlDataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="url" value="${jdbc.url.mysql}" /> <property name="username" value="${jdbc.username.jeecg}" /> <property name="password" value="${jdbc.password.jeecg}" /> <!-- 初始化连接大小 --> <property name="initialSize" value="0" /> <!-- 连接池最大使用连接数量 --> <property name="maxActive" value="20" /> <!-- 连接池最大空闲 --> <property name="maxIdle" value="20" /> <!-- 连接池最小空闲 --> <property name="minIdle" value="0" /> <!-- 获取连接最大等待时间 --> <property name="maxWait" value="60000" /> <!-- <property name="poolPreparedStatements" value="true" /> <property name="maxPoolPreparedStatementPerConnectionSize" value="33" /> --> <property name="validationQuery" value="${validationQuery.sqlserver}" /> <property name="testOnBorrow" value="false" /> <property name="testOnReturn" value="false" /> <property name="testWhileIdle" value="true" /> <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 --> <property name="timeBetweenEvictionRunsMillis" value="60000" /> <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 --> <property name="minEvictableIdleTimeMillis" value="25200000" /> <!-- 打开removeAbandoned功能 --> <property name="removeAbandoned" value="true" /> <!-- 1800秒,也就是30分钟 --> <property name="removeAbandonedTimeout" value="1800" /> <!-- 关闭abanded连接时输出错误日志 --> <property name="logAbandoned" value="true" /> </bean> <!-- 数据源2 : access数据源 --> <bean id="accessDataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="sun.jdbc.odbc.JdbcOdbcDriver" /> <property name="url" value="jdbc:odbc:users" /> <property name="username" value="" /> <property name="password" value="" /> </bean> <!-- access sessionFactory --> <bean id="aceessSessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="dataSource" ref="accessDataSource" /> <property name="hibernateProperties"> <props> <!-- access 语法和MSSQL相似 所以用的MSSQL方言,或者可以使用第三方方言 --> <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop> <prop key="hibernate.jdbc.batch_size">30</prop> <prop key="hibernate.jdbc.fetch_size">50</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">false</prop> <prop key="hibernate.hbm2ddl.auto">update</prop> </props> </property> </bean> <!-- 数据源集合 --> <bean id="dataSource" class="org.jeecgframework.core.extend.datasource.DynamicDataSource"> <property name="targetDataSources"> <map key-type="org.jeecgframework.core.extend.datasource.DataSourceType"> <entry key="mysqlDataSource" value-ref="mysqlDataSource" /> </map> </property> <property name="defaultTargetDataSource" ref="mysqlDataSource" /> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="entityInterceptor" ref="hiberAspect"/> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">${hibernate.dialect}</prop> <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> <prop key="hibernate.temp.use_jdbc_metadata_defaults">false</prop> </props> </property> <!-- 注解方式配置 --> <property name="packagesToScan"> <list> <value>system.pojo.*</value> <value>demo.entity.*</value> <value>test.entity.*</value> <value>test.bussiness.db.UserInfo</value> </list> </property> </bean> <bean id="accessJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource"> <ref bean="accessDataSource"/> </property> </bean> <bean id="accessTransactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory" ref="aceessSessionFactory"></property> </bean> <tx:advice id="txAdvice" transaction-manager="accessTransactionManager"> <tx:attributes> <tx:method name="exists" read-only="true" /> <tx:method name="save*" propagation="REQUIRED" /> <tx:method name="add*" propagation="REQUIRED" /> <tx:method name="create*" propagation="REQUIRED" /> <tx:method name="insert*" propagation="REQUIRED" /> <tx:method name="update*" propagation="REQUIRED" /> <tx:method name="merge*" propagation="REQUIRED" /> <tx:method name="del*" propagation="REQUIRED" /> <tx:method name="remove*" propagation="REQUIRED" /> <tx:method name="put*" propagation="REQUIRED" /> <tx:method name="use*" propagation="REQUIRED" /> <tx:method name="get*" propagation="REQUIRED" /> <tx:method name="count*" propagation="REQUIRED" read-only="true" /> <tx:method name="find*" propagation="REQUIRED" read-only="true" /> <tx:method name="list*" propagation="REQUIRED" read-only="true" /> <tx:method name="*" propagation="REQUIRED" /> </tx:attributes> </tx:advice> <aop:config proxy-target-class="true"> <aop:advisor advice-ref="txAdvice" pointcut="execution(* cors.bussiness.db..*.*(..))" /> </aop:config> <!-- JDBC配置 --> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource"> <ref bean="dataSource"/> </property> </bean> <!-- JDBC配置 --> <bean id="namedParameterJdbcTemplate" class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate"> <constructor-arg ref="dataSource" /> </bean> <!-- 配置事物管理器,在*ServiceImpl里写@Transactional就可以启用事物管理 --> <bean name="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <tx:annotation-driven transaction-manager="transactionManager" /> </beans>
关于spring+hibernate配置多数据源的问题
我的项目是个webservice项目,使用了hibernate+spring框架,由于项目中要用到两个数据库(都是oracle数据库),我在网上查了一些资料,但是在我的项目中做数据源切换的时候总是切换不过去,也就是说只能连接默认的数据源,一下是我的spring配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd" default-autowire="byName"> <context:annotation-config /> <!-- AXIS2通过该对象加载spring中的bean 固定配置 --> <bean id="applicationContext" class="org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder" /> <!-- end --> <!-- AXIS2本地业务配置 --> <bean id="PAPWebService" class="com.pap.ws.PAPWebService" /> <!-- end --> <context:component-scan base-package="com.pap"> <context:include-filter type="regex" expression=".dao.impl.*" /> <context:include-filter type="regex" expression=".serviec.impl.*" /> <context:include-filter type="regex" expression=".entity.*" /> </context:component-scan> <bean id="tmsDataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource"> <property name="driver" value="oracle.jdbc.driver.OracleDriver" /> <property name="driverUrl" value="jdbc:oracle:thin:@172.17.30.80:1521:tms" /> <property name="user" value="SELFSERVICE" /> <property name="password" value="Password123" /> <!-- 最大数据库连接数 --> <property name="maximumConnectionCount" value="100" /> <!-- 最小数据库连接数 --> <property name="minimumConnectionCount" value="3" /> <!-- 最少保持的空闲连接数(默认2个) --> <property name="prototypeCount" value="3" /> <!-- 没有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受 --> <!-- <property name="maximumNewConnections" value="20"/> --> <!-- 最大的并发连接数 --> <property name="simultaneousBuildThrottle" value="50" /> <!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默认30秒 --> <property name="houseKeepingSleepTime" value="10000" /> <!-- 用于保持连接的测试语句 --> <property name="houseKeepingTestSql" value="select sysdate from dual" /> <!-- 在使用之前测试 --> <property name="testBeforeUse" value="true" /> </bean> <bean id="hisDataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource"> <property name="driver" value="oracle.jdbc.driver.OracleDriver" /> <property name="driverUrl" value="jdbc:oracle:thin:@172.17.1.252:1521:ORCL" /> <property name="user" value="system" /> <property name="password" value="aaaaaa" /> <!-- 最大数据库连接数 --> <property name="maximumConnectionCount" value="100" /> <!-- 最小数据库连接数 --> <property name="minimumConnectionCount" value="3" /> <!-- 最少保持的空闲连接数(默认2个) --> <property name="prototypeCount" value="3" /> <!-- 没有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受 --> <!-- <property name="maximumNewConnections" value="20"/> --> <!-- 最大的并发连接数 --> <property name="simultaneousBuildThrottle" value="50" /> <!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默认30秒 --> <property name="houseKeepingSleepTime" value="10000" /> <!-- 用于保持连接的测试语句 --> <property name="houseKeepingTestSql" value="select sysdate from dual" /> <!-- 在使用之前测试 --> <property name="testBeforeUse" value="true" /> </bean> <bean id="dynamicDataSource" class="com.pap.datasource.DynamicDataSource"> <!-- 通过key-value的形式来关联数据源 --> <property name="targetDataSources"> <map key-type="java.lang.String"> <entry value-ref="tmsDataSource" key="tmsDataSource"></entry> <entry value-ref="hisDataSource" key="hisDataSource"></entry> </map> </property> <property name="defaultTargetDataSource" ref="tmsDataSource"> </property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dynamicDataSource" /> <property name="packagesToScan"> <list> <value>com.pap.entity</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> <!-- <prop key="hibernate.hbm2ddl.auto">update</prop> --> </props> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <tx:annotation-driven transaction-manager="transactionManager" /> </beans> 下面是我写的两个用于切换数据源的类: DataSourceContextHolder.java package com.pap.datasource; public class DataSourceContextHolder { public static final String DATA_SOURCE_TMS = "tmsDataSource"; public static final String DATA_SOURCE_HIS = "hisDataSource"; private static final ThreadLocal<String> contextHolder = new ThreadLocal<String>(); public static void setDataSourceType(String customerType) { contextHolder.set(customerType); } public static String getDataSourceType() { return contextHolder.get(); } public static void clearDataSourceType() { contextHolder.remove(); } } DynamicDataSource.java package com.pap.datasource; import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource; public class DynamicDataSource extends AbstractRoutingDataSource { @Override protected Object determineCurrentLookupKey() { return DataSourceContextHolder.getDataSourceType(); } } dao层代码 package com.pap.dao.impl; import java.io.Serializable; import java.util.List; import org.hibernate.criterion.DetachedCriteria; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import org.springframework.stereotype.Repository; import com.pap.dao.BaseDao; @Repository("baseDao") public class BaseDaoImpl extends HibernateDaoSupport implements BaseDao{ @Override public <T> Serializable save(T entity) throws Exception { Serializable s = this.getHibernateTemplate().save(entity); return s; } @Override public <T> void update(T entity) throws Exception { this.getHibernateTemplate().update(entity); } @SuppressWarnings("unchecked") @Override public <T> List<T> query(String hql,Object[] values) throws Exception { return this.getHibernateTemplate().find(hql, values); } @Override public <T> List<T> query(String hql, Object value) throws Exception { return query(hql, new Object[]{value}); } @Override public <T>T getEntity(Class<T> entityClass, Serializable id) throws Exception { return this.getHibernateTemplate().get(entityClass, id); } @SuppressWarnings("unchecked") @Override public <T> List<T> find(DetachedCriteria detachedCriteria, int firstResult, int maxResults) throws Exception { return getHibernateTemplate().findByCriteria(detachedCriteria, firstResult, maxResults); } @Override @SuppressWarnings("unchecked") public <T> List<T> find(DetachedCriteria criteria) throws Exception { return getHibernateTemplate().findByCriteria(criteria); } } service层代码,我是在这里做的数据源切换 package com.pap.service.impl; import java.util.ArrayList; import java.util.Date; import java.util.List; import javax.annotation.Resource; import org.hibernate.criterion.DetachedCriteria; import org.hibernate.criterion.Restrictions; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import com.pap.dao.BaseDao; import com.pap.datasource.DataSourceContextHolder; import com.pap.entity.ChargeTypeDict; import com.pap.entity.ClinicForRegist; import com.pap.entity.MedicalCard; import com.pap.entity.Patient; import com.pap.entity.SelfTerminal; import com.pap.entity.TransactionRecord; import com.pap.entity.User; import com.pap.service.BaseService; @Service @Transactional(propagation = Propagation.REQUIRED) public class BaseServiceImpl implements BaseService { @Resource private BaseDao baseDao; /** * 查询排号信息 */ @Override public List<ClinicForRegist> queryClinicForRegist(java.sql.Date clinicDate, Object[] timeDesc, int firstResult, int maxResults) throws Exception { DataSourceContextHolder.setDataSourceType(DataSourceContextHolder.DATA_SOURCE_HIS); DetachedCriteria detachedCriteria = DetachedCriteria.forClass(ClinicForRegist.class); detachedCriteria.add(Restrictions.eq("clinicDate", clinicDate)); detachedCriteria.add(Restrictions.in("timeDesc", timeDesc)); List<ClinicForRegist> list = baseDao.find(detachedCriteria, firstResult, maxResults); DataSourceContextHolder.clearDataSourceType(); return list; } } webservice接口类 package com.pap.ws; import java.sql.Timestamp; import java.util.Calendar; import java.util.Date; import java.util.List; import javax.annotation.Resource; import org.apache.log4j.Logger; import com.pap.entity.ChargeTypeDict; import com.pap.entity.ClinicForRegist; import com.pap.entity.ClinicIndex; import com.pap.entity.DeptDict; import com.pap.entity.MedicalCard; import com.pap.entity.Patient; import com.pap.entity.Privileges; import com.pap.entity.Response; import com.pap.entity.SelfTerminal; import com.pap.entity.TransactionRecord; import com.pap.entity.User; import com.pap.service.BaseService; import com.pap.util.MD5Util; public class PAPWebService { @Resource BaseService baseService; /** * 查询可挂号信息 * @param firstResult 起始条数 * @param maxResults 最大条数 * @return */ public Response queryClinicRegist(int firstResult, int maxResults) { Response response = new Response(); try { Calendar calendar = Calendar.getInstance(); int hour = calendar.get(Calendar.HOUR_OF_DAY); String[] timeDesc = null; if (8 < hour && hour < 12) { timeDesc = new String[] { "白天", "上午", "下午", "昼夜" }; } else if (hour > 11 && hour < 18) { timeDesc = new String[] { "白天", "下午", "昼夜" }; } else { timeDesc = new String[] {"昼夜" }; } List<ClinicForRegist> list = baseService.queryClinicForRegist(new java.sql.Date(calendar.getTimeInMillis()), timeDesc, firstResult, maxResults); if(list.size() > 0){ response.setResult("S"); response.setArrayData(list); }else{ response.setResult("F"); response.setResult("没有查询到记录"); } } catch (Exception e) { e.printStackTrace(); response.setResult("F"); response.setErrorInfo(e.getMessage()); } return response; } public void setClinicForRegist(ClinicForRegist clinicForRegist){ } public void setClinicIndex(ClinicIndex clinicIndex){ } public void setDeptDict(DeptDict deptDict){ } }
j2ee项目配置数据源的问题
最近在边学边做j2ee项目,过程中遇到一个问题。框架是springMVC+spring+hibernate 教程中配置数据源的方式,都是通过在spring配置文件或者hibernate配置文件中已经配置好了数据源。 但实际是,我们在开发的时候根本不知道客户数据库的类型更不用说账号和密码了,这样一来,我部署的时候是要把项目打成war包然后放到tomcat上的,这样数据源岂不是没法用? 或者说有没有什么办法在部署的时候去配置数据源?比如提供一个jsp页面,专门就是用来配置数据源?大家对于这个问题是怎么解决的呢
Spring Boot配置多数据源时,使用非默认数据源时,报错Invalid bound statement (not found)
Spring Boot配置多数据源时,使用非默认数据源时, 报错Invalid bound statement (not found), 本地映射地址代码 ``` bean.setMapperLocations( // 设置mybatis的xml所在位置 new PathMatchingResourcePatternResolver().getResources("classpath*:mapping/test01/*.xml")); ``` 都已配置,而且将非默认数据设置为默认数据操作正常,请问各位大神大概是什么原因,源代码地址:https://pan.baidu.com/s/1MPXaRVoyHOPbydt6r5LVsw,烦请大神调试,本人qq:805538141,如有结果万分感谢!
spring配置文件引用问题
mybatis-config.xml配置数据源,spring-tx.xml管理事务,需要引用mybatis-config.xml,我增加spring-activiti.xml文件也需要引用mybatis-config.xml配置文件,因为使用同一个数据源,但是这样我引用两次mybatis-config.xml会不会导致最终创建了两个数据源
spring+mybatis多数据源配置问题,谁能帮我分析一下问题出在哪儿
配置的XML文件 [code="xml"] <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <!-- 数据源配置 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> <property name="url" value="jdbc:oracle:thin:@221.237.x.x:1521:orcl"/> <property name="username" value="iptv_dev"/> <property name="password" value="just4iptv"/> </bean> --> <bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource"> <property name="driver" value="oracle.jdbc.driver.OracleDriver" /> <property name="driverUrl" value="jdbc:oracle:thin:@221.237.x.x:1521:orcl" /> <property name="user" value="user" /> <property name="password" value="aaaaa" /> <property name="prototypeCount" value="5"/> <property name="maximumConnectionCount" value="100"/> <property name="minimumConnectionCount" value="5"/> <property name="maximumActiveTime" value="10000"/> <property name="trace" value="true"/> <property name="verbose" value="true"/> </bean> <!-- IP网管数据源接口 --> <bean id="dataSource_1" class="org.logicalcobwebs.proxool.ProxoolDataSource"> <property name="driver" value="oracle.jdbc.driver.OracleDriver" /> <property name="driverUrl" value="jdbc:oracle:thin:@61.139.x.x:1521:orcl" /> <property name="user" value="user" /> <property name="password" value="aaaa" /> <property name="prototypeCount" value="5"/> <property name="maximumConnectionCount" value="100"/> <property name="minimumConnectionCount" value="5"/> <property name="maximumActiveTime" value="10000"/> <property name="trace" value="true"/> <property name="verbose" value="true"/> </bean> <!-- 事务管理 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <bean id="transactionManager_1" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource_1" /> </bean> <!-- 使用spring annotation自动扫描配置 --> <context:component-scan base-package="com.zznode.iptvs" /> <!-- 自动注入 --> <context:annotation-config /> <!-- 使用spring annotation自动事务配置 <tx:annotation-driven transaction-manager="transactionManager"/> --> <!-- SqlSessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- 根据实际情况修改或添加多个 --> <property name="typeAliasesPackage" value="com.zznode.iptvs.diagnosis.entity,com.zznode.iptvs.test.entity,com.zznode.iptvs.intf.entity,com.zznode.iptvs.diagnosis.intf.entity" /> </bean> <!-- SqlSessionFactory --> <bean id="sqlSessionFactory_1" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource_1" /> <!-- 根据实际情况修改或添加多个 --> <property name="typeAliasesPackage" value="com.zznode.iptvs.manage.entity" /> </bean> <!-- Mapper自动扫描配置 --> <bean name="scan" class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 根据实际情况修改或添加多个 --> <property name="basePackage" value="com.zznode.iptvs.monitor.dao,com.zznode.iptvs.test.dao,com.zznode.iptvs.diagnosis.dao,com.zznode.iptvs.expert.dao,com.zznode.iptvs.diagnosis.intf.dao" /> <property name="sqlSessionFactory" ref="sqlSessionFactory" /> </bean> <bean name="scan_1" class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 根据实际情况修改或添加多个 --> <property name="basePackage" value="com.zznode.iptvs.manage.dao" /> <property name="sqlSessionFactory" ref="sqlSessionFactory_1" /> </bean> <!-- 事务拦截器配置 --> <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor"> <property name="transactionManager"> <ref bean="transactionManager" /> </property> <property name="transactionAttributes"> <props> <prop key="add*">PROPAGATION_REQUIRED,-Exception</prop> <prop key="delete*">PROPAGATION_REQUIRED,-Exception</prop> <prop key="update*">PROPAGATION_REQUIRED,-Exception</prop> </props> </property> </bean> <!-- 采用自动BeanNameAutoProxyCreator实现事务拦截代理的自动配置 基于服务的事务管理 --> <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"> <property name="beanNames"> <list> <value>*Service*</value> </list> </property> <property name="interceptorNames"> <list> <value>transactionInterceptor</value> </list> </property> </bean> </beans> [/code] 目前配置好后。我对sqlSessionFactory_1下面包的数据进行读写时,还是读写的是sqlSessionFactory下面的数据。也就是数据源dataSource而不是数据源dataSource_1 谁能告诉我错在哪里。
Spring-Hibernate配置了多数据源(都是MySql)能不能创建不同数据库的表的实体映射?
需要把数据库一的数据存到数据库二中,数据库一建立了实体映射,能不能配置到数据库二也用实体映射?
spring boot 中用到100多个数据源,如何添加分布式事务
spring boot 项目中大概用到100多个数据源, 项目启动时没有初始化任何数据源, 只有根据用户请求的域名得到数据库配置(配置文件中有域名与数据库连接信息的映射关系) ,然后动态创建数据源,,, 问题是,需要添加事务的话有点麻烦????
spring boot事务配置问题?
用@注解配置事务时,每个方法只能配置一个事务处理器,那这个方法内操作了多个数据源时需要配置多个事务处理器,如何配置呢?求大神帮忙。 关键代码如下: @Transactional(value="repayment_dbTransactionManager") public void doTask() {}
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
此博客仅为我业余记录文章所用,发布到此,仅供网友阅读参考,如有侵权,请通知我,我会删掉。 补充 有不少读者留言说本文章没有用,因为天气预报直接打开手机就可以收到了,为何要多此一举发送到邮箱呢!!!那我在这里只能说:因为你没用,所以你没用!!! 这里主要介绍的是思路,不是天气预报!不是天气预报!!不是天气预报!!!天气预报只是用于举例。请各位不要再刚了!!! 下面是我会用到的两个场景: 每日下
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了无数
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
MyBatis研习录(01)——MyBatis概述与入门
C语言自学完备手册(33篇) Android多分辨率适配框架 JavaWeb核心技术系列教程 HTML5前端开发实战系列教程 MySQL数据库实操教程(35篇图文版) 推翻自己和过往——自定义View系列教程(10篇) 走出思维困境,踏上精进之路——Android开发进阶精华录 讲给Android程序员看的前端系列教程(40集免费视频教程+源码) 版权声明 本文原创作者:谷哥的小弟 作者博客
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前前言 为啥今天有个前前言呢? 因为你们的丙丙啊,昨天有牌面了哟,直接被微信官方推荐,知乎推荐,也就仅仅是还行吧(心里乐开花)
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
Python爬虫精简步骤1 获取数据
爬虫的工作分为四步: 1.获取数据。爬虫程序会根据我们提供的网址,向服务器发起请求,然后返回数据。 2.解析数据。爬虫程序会把服务器返回的数据解析成我们能读懂的格式。 3.提取数据。爬虫程序再从中提取出我们需要的数据。 4.储存数据。爬虫程序把这些有用的数据保存起来,便于你日后的使用和分析。 这一篇的内容就是:获取数据。 首先,我们将会利用一个强大的库——requests来获取数据。 在电脑上安装
Python绘图,圣诞树,花,爱心 | Turtle篇
1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle() circle.shape('circle') circle.color('red') circle.speed('fastest') circle.up() square = turtle.Turtle()
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 更多有趣分析教程,扫描下方二维码关注vx公号「裸睡的猪」 即可查看! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布
web前端javascript+jquery知识点总结
Javascript javascript 在前端网页中占有非常重要的地位,可以用于验证表单,制作特效等功能,它是一种描述语言,也是一种基于对象(Object)和事件驱动并具有安全性的脚本语言 ,语法同java类似,是一种解释性语言,边执行边解释。 JavaScript的组成: ECMAScipt 用于描述: 语法,变量和数据类型,运算符,逻辑控制语句,关键字保留字,对象。 浏览器对象模型(Br
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
文章目录1. 前言2. 数据下载3. 数据处理4. 数据可视化 1. 前言 今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。 2月6日追记:本文发布后,腾讯的数据源多次变更u
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
渗透测试-灰鸽子远控木马
木马概述 灰鸽子( Huigezi),原本该软件适用于公司和家庭管理,其功能十分强大,不但能监视摄像头、键盘记录、监控桌面、文件操作等。还提供了黑客专用功能,如:伪装系统图标、随意更换启动项名称和表述、随意更换端口、运行后自删除、毫无提示安装等,并采用反弹链接这种缺陷设计,使得使用者拥有最高权限,一经破解即无法控制。最终导致被黑客恶意使用。原作者的灰鸽子被定义为是一款集多种控制方式于一体的木马程序
Python:爬取疫情每日数据
前言 有部分同学留言说为什么412,这是因为我代码里全国的cookies需要你自己打开浏览器更新好后替换,而且这个cookies大概只能持续20秒左右! 另外全国卫健委的数据格式一直在变,也有可能会导致爬取失败! 我现在已根据2月14日最新通报稿的格式修正了! 目前每天各大平台,如腾讯、今日头条都会更新疫情每日数据,他们的数据源都是一样的,主要都是通过各地的卫健委官网通报。 为什么已经有大量平台做
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。   再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。   下文是原回答,希望能对你能有所启发。   如果我说,这个世界上人真的分三六九等,
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告(本文) 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允
作为程序员的我,大学四年一直自学,全靠这些实用工具和学习网站!
我本人因为高中沉迷于爱情,导致学业荒废,后来高考,毫无疑问进入了一所普普通通的大学,实在惭愧...... 我又是那么好强,现在学历不行,没办法改变的事情了,所以,进入大学开始,我就下定决心,一定要让自己掌握更多的技能,尤其选择了计算机这个行业,一定要多学习技术。 在进入大学学习不久后,我就认清了一个现实:我这个大学的整体教学质量和学习风气,真的一言难尽,懂的人自然知道怎么回事? 怎么办?我该如何更好的提升
粒子群算法求解物流配送路线问题(python)
粒子群算法求解物流配送路线问题(python) 1.查找论文文献 找一篇物流配送路径优化+粒子群算法求解的论文 参考文献:基于混沌粒子群算法的物流配送路径优化 2.了解粒子群算法的原理 讲解通俗易懂,有数学实例的博文:https://blog.csdn.net/daaikuaichuan/article/details/81382794 3.确定编码方式和解码策略 3.1编码方式 物流配送路线的
教你如何编写第一个简单的爬虫
很多人知道爬虫,也很想利用爬虫去爬取自己想要的数据,那么爬虫到底怎么用呢?今天就教大家编写一个简单的爬虫。 下面以爬取笔者的个人博客网站为例获取第一篇文章的标题名称,教大家学会一个简单的爬虫。 第一步:获取页面 #!/usr/bin/python # coding: utf-8 import requests #引入包requests link = "http://www.santostang.
前端JS初级面试题二 (。•ˇ‸ˇ•。)老铁们!快来瞧瞧自己都会了么
1. 传统事件绑定和符合W3C标准的事件绑定有什么区别? 传统事件绑定 &lt;div onclick=""&gt;123&lt;/div&gt; div1.onclick = function(){}; &lt;button onmouseover=""&gt;&lt;/button&gt; 注意: 如果给同一个元素绑定了两次或多次相同类型的事件,那么后面的绑定会覆盖前面的绑定 (不支持DOM事...
情人节来了,教你个用 Python 表白的技巧
作者:@明哥 公众号:Python编程时光 2020年,这个看起来如此浪漫的年份,你还是一个人吗? 难不成我还能是一条狗? 18年的时候,写过一篇介绍如何使用 Python 来表白的文章。 虽然创意和使用效果都不错,但有一缺点,这是那个exe文件,女神需要打开电脑,才有可能参与进来,进而被你成功"调戏”。 由于是很早期的文章了,应该有很多人没有看过。 没有看过的,你可以点击这里查看:用Pyt...
相关热词 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数 c#日期精确到分钟 c#自定义异常必须继承 c#查表并返回值 c# 动态 表达式树 c# 监控方法耗时 c# listbox c#chart显示滚动条
立即提问