自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

半壁灯的博客

半壁青灯论天下,荒烟蔓草尽识君

  • 博客(58)
  • 收藏
  • 关注

原创 爬取淘宝评论时出现list index out of range问题

list index out of range  列表越界Traceback (most recent call last):  File "G:/workSpace/Python/TB_Crawler/Crawler_train.py", line 71, in <module>    print(getCommentsList(ItemURL2))  File "G:/workSp...

2018-04-19 22:04:31 2725

原创 Django提交表单出错——CSRF token missing or incorrect

在提交form表单时出现403(Forbidden),CSRF token missing or incorrect的错误这是Django为了防止用户在提交表单时跨站攻击所做的保护解决方法:在from标签后加上模板标签{%csrf_token%}<form action="/inputLink" method="post">{% csrf_token %}...

2018-04-17 19:31:44 533

原创 在PyCharm中启动Django服务

运行manage.py,会出现没有参数的提示。给manage.py配置端口参数在Parameter处配置runserver 0.0.0.0:8080的参数此时再运行manage.py,服务启动成功

2018-04-17 16:02:33 4739

原创 MyEclipse2017修改自带的Tomcat8.5的timeout

找到  MyEclipse的工作空间\.metadata\.plugins\org.eclipse.wst.server.core目录下的service.xml文件修改其中的 start-timeout="45"属性,改为更大,如start-timeout="200"

2018-03-12 18:44:04 2802

原创 Django笔记——使用Anaconda创建虚拟环境并搭建Django项目

一.创建虚拟环境1)打开cmd命令窗口2)创建虚拟环境 conda create -n mydjango_env3)查看虚拟环境 conda env list*号表示当前使用的环境4)激活创建的虚拟环境 activate mydjango_env二.安装Django在新环境激活的状态下安装Django conda install django三.创建项目1)进入需要创建项目的文件目录2)创建项目 ...

2018-03-04 20:14:24 7882 1

原创 MySQL 5.7中文输入问题

MySQL 5.7,PyCharm2017,数据库输入出现InternalError: (pymysql.err.InternalError) (1366, u"Incorrect string value: '\\xE6\\x8B\\xBF\\xE5\\xB7\\xA5...' for column .....的错误数据库中文输入的错误解决办法:1)参照上篇文章将my.ini文件中的配置都配置成...

2018-03-02 17:18:39 2063

原创 MySQL 5.7缺少my.ini文件

我安装的MySQL 5.7缺少my.ini文件,需要自己创建。大致内容如下[mysqld]character-set-server=utf8#绑定IPv4和3306端口bind-address = 0.0.0.0port = 3306sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"default_storage_engine...

2018-03-01 22:29:48 6448 3

原创 PyCharm同目录下导入模块会报错的问题

在PyCharm2017中同目录下import其他模块,会出现No model named ...的报错,但实际可以运行这是因为PyCharm不会将当前文件目录自动加入source_path。在当前目录右键make_directory as-->Sources Rootpython导入模块同一目录下在a.py中导入b.pyimport b 或者 from b import 方法/函数不同目录...

2018-03-01 14:46:27 10727 2

原创 python3.6连接MySQL数据库

python需要类库来连接MySQL,一开始用MySQLdb试了好多办法都能在pycharm中导入,后来网上查了发现python3用的是pymysql,python2用的是MySQLdb。在cmd中pip install pymysql成功安装,但是pycharm中import pymysql却没有出现install的提示,原因未知。后来发现pycharm是自带pymysql的。 在pycharm...

2018-02-28 18:18:25 570

原创 MySQL 5.7——ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

使用MySQL 5.7版本时出现  ‘’ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)‘’的错误MySQL 5.6以后出于安全考虑root密码不能为空,系统会随机生成一个初始root密码初始密码在data目录下的XXX.err文件中2018-02-27T08:31:52.07164...

2018-02-27 20:50:03 630

原创 MySql 5.7无法正常启动的问题

mysql 5.7版本安装好后启动服务会出现‘’MySQL服务无法启动,服务没有报告任何错误‘’的提示原因在于mysql 5.7版本的安装目录中缺少data这个文件夹解决方法:初始化mysql   mysqld --initialize...

2018-02-27 16:46:22 1328 1

转载 绝对路径和相对路径的区别

在HTML里只要涉及文件的地方(如超级链接、图片等)就会涉及绝对路径与相对路径的概念。  1.绝对路径    绝对路径是指文件在硬盘上真正存在的路径。例如“bg.jpg”这个图片是存放在硬盘的“E:\book\网页布局代码\第2章”目录下,那么 “bg.jpg”这个图片的绝对路径就是“E:\book\网页布\代码\第2章\bg.jpg"。那么如果要使用绝对路径指定网页的背景

2017-08-06 15:51:13 894

原创 GitHub for windows中文乱码问题

GitHub for windows客户端在显示中文时会出现乱码问题 GitHub在推送代码到远程时会自动将所有文件格式转化为utf-8,因此在网页端浏览GitHub不会出现中文乱码问题。但在本地客户端浏览就需要自己手动将文件编码格式转换为utf-8。解决办法 一:下载Notepad++ 二:用Notepad++打开文件 三:编码->转为 Utf-8 无 BOM 编码格式

2017-08-05 15:32:16 2373

原创 Java多线程(三)

线程的死锁在Java编程中,由于线程可进入阻塞状态,也因为对象可拥有synchronized()函数,致使只有在同步锁被释放时,才能够访问对象。因此,可能会出现线程A陷入对线程B的等待,线程B陷入对线程C的等待,线程C又陷入对线程A的等待,于是各个线程陷入一个彼此等待的轮回中,任何线程都动弹不得,这种现象便称为死锁。一旦发生下面四种情况之一,就会导致死锁发生: 1)相互排斥:一个线程永远占有某一共

2017-08-02 20:20:55 411

原创 Java多线程(二)

在线程中启动启动其他线程线程通过调用star()方法将启动该线程,使之从新建状态进入就绪队列排队。一旦轮到它享用CPU资源的时候,就可以脱离创建它的主线程,开始自己的生命周期。线程一计算完1+2+…+50,线程二继续计算51+52+…+100。package com.thread;public class MultiThread_StartOtherThread { public static

2017-08-02 18:24:39 366

转载 MySQL性能优化的最佳21条经验

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.为查

2017-08-01 21:55:14 630

原创 Java多线程(一)

什么是多线程Java语言的一大特性就是内置了对多线程的支持,多线程是指同时存在几个执行体,按几条不同的线索共同工作的情况。 多线性(Multithread)是这样一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间相互独立。线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的储存空间,而是和所属进程中的其他线程共享一个储存空间,这

2017-07-31 22:24:01 431

原创 Spring——事物管理与传播特性

事物的特性(ACID)1)原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。2)一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在现实中的数据不应该被破坏。3)隔离性(Isolation):可能有许多事务会同时处理相同的数据,因此每个事务都应该

2017-07-27 19:10:01 382

原创 Java动态代理

动态代理在程序运行时由反射机制动态创建而成。为其他对象创建一个代理以控制对这个对象的访问。实现动态代理:LogInterceptor.javapackage com.spring.aop;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy

2017-07-26 22:32:29 680

原创 Spring——AOP核心思想与实现

AOP(Aspect Oriented Programming):面向切面编程 核心思想:动态的添加和删除切面上的逻辑而不影响原来的执行代码AOP相关概念:1.JoinPoint 连接点,加入切面逻辑的位置。@Before("execution(* com.spring.service..*.*(..))")2.PointCut JoinPoint的一个集合@Pointcut("executi

2017-07-26 16:03:30 3135

原创 SSH整合——Action的生成由Struts控制

ssh整合中Action的生成不是由spring控制的,而是Struts控制的。 Struts容器生成一个Action,然后会自动去spring容器中找相应的东西注入。因此在Action中不需要写@Component @Scope @Resource这些注解。如果写了这些注解,会在spring容器中多出一个没用的action。如果要自己定resource的name,@Resource(name=”

2017-07-24 19:14:15 348

原创 SSH整合——ssh流程图

ssh流程图

2017-07-24 18:23:41 1212

原创 SSH整合——OpenSessionInViewFilter

getCurrentSession()事务会自动关闭,所以在有所jsp页面查询数据都会关闭session。要想在jsp查询数据库需要加入OpenSessionInViewFilter过滤器。 No Session found for current thread错误

2017-07-24 18:17:22 375

原创 HIbernate——事务并发问题及处理(乐观锁悲观锁)

一、事物并发三种常见问题1.dirty read 脏读 时间 事物A 事物B T1 开始事物 开始事物 T2 查询账户余额为1000 T3 汇入100把余额变为1100 T4 读取账户余额为1100 T5 回滚 T6 取款1100 T7 提交事物失败 事物A读到了事物B还没有提交的数据2.non

2017-07-22 18:36:18 1532

原创 Hibernate——如何使用二级缓存

(一)在hibernate-release-4.2.21.Final\project\etc目录下找到ehcache.xml文件,复制到项目的src目录下。 ehcache.xml中的内容(使用时记得把注释去掉)<defaultCache maxElementsInMemory="10000" <!-- 可以缓存的对象数量 --> eternal="false"

2017-07-21 18:51:22 375

原创 Hibernate——一级缓存__二级缓存__查询缓存

一级缓存session级别缓存@Test public void testCache() { testSaveGroup(); Session session = sf.getCurrentSession(); session.beginTransaction(); Group g = (Group)session.get(Grou

2017-07-21 18:19:52 508

转载 HIbernate——list和iterator的区别

一、先介绍一下Java中的缓存系统JCS(Java cache system) 1、JCS(java Caching System)是一个对象Cache,它可以把Java对象缓存起来,提高那些访问频率很高的Java对象的存取效率。JCS是按照对象的唯一标示来存取对象的,比如说可以按照对象的    hashCode来存取。 2、对于hibernate来说,可以利用JCS来缓存查询结果

2017-07-20 18:20:49 582

原创 Hibernate——1+N问题

什么是1+N问题oneToMany(默认fetch=FetchType.LAZY)或者ManyToOne(默认fetch=FetchType.EAGER)在fetch=EAGER时,查询其中一方,由于关联关系的存在另一方中的n个对象也会被取出本来只要发一条sql语句,现在多发了n条解决方法1)fetch设成LAZY2)做外连接查询List

2017-07-20 15:46:12 349

原创 Hibernate——树状映射

在同一个类中使用ManyToOne和OneToMany@Entitypublic class Org { private int id; private String name; private Set children =new HashSet(); private Org parent; @Id @GeneratedValue public int getId() {

2017-07-19 18:19:52 378

原创 Hibernate——关联关系的CRUD(增删改查)二

(三)改通过更新user来更新group@Test public void testUpdateUser() { testSaveGroup(); Session session = sf.getCurrentSession(); session.beginTransaction(); User u = (User)session.get(User.class, 1

2017-07-19 15:41:55 312

原创 Hibernate——关联关系的CRUD(增删改查)一

两张ManyToOne双向关联的表Group和User(一)增通过保存user把group也保存@Test public void testSaveUser() { User u = new User(); Group g = new Group(); u.setName("u1"); g.setName("g1"); u.setGroup(g);

2017-07-18 20:13:10 408

原创 Hibernate——ManyToOne双向关联

@Entity@Table(name="t_group")public class Group { private int id; private String name; private Set users = new HashSet(); @Id @GeneratedValue public int getId() { return id; } public v

2017-07-18 18:03:47 328

转载 Hibernate4较于Hibernate3的改动

Hibernate4的改动较大只有spring3.1以上版本能够支持,Spring3.1取消了HibernateTemplate,因为Hibernate4的事务管理已经很好了,不用Spring再扩展了。这里简单介绍了hibernate4相对于hibernate3配置时出现的错误,只列举了问题和解决方法,详细原理如果大家感兴趣还是去自己搜吧,网上很多。1、Spring3.1去掉了Hibe

2017-07-17 18:12:43 367

原创 Hibernate——flush()方法强制同步数据库

@Test public void testFlush() { Session session = sf.getCurrentSession(); session.beginTransaction(); Student s = (Student)session.load(Student.class, 2); s.setName("ss"); s.setName("sss

2017-07-01 13:59:32 3183 1

原创 Hibernate——clear()方法清除缓存

@Test public void testClear() { Session session = sf.getCurrentSession(); session.beginTransaction(); Student s = (Student)session.load(Student.class, 2); System.out.println(s.getName());

2017-07-01 10:44:12 3324

原创 Hibernate——仅更新部分字段

介绍两种方法1.Annotation设定@Column(updatable=false)在不需要更新的属性上添加这个注解。这种方法不灵活,很少使用。2.使用HQL@Test public void testUpdate4() { Session session = sf.getCurrentSession(); session.beginTransaction()

2017-06-30 22:41:09 409

原创 Hibernate——三种状态下的update()方法

1.transient状态更新transient对象会报错。更新自己设定id的transient对象可以(数据库有对应记录)更新后除了设定更新的字段,其他字段会重置成null

2017-06-30 20:47:44 2641

原创 Hibernate——load方法和get方法的异同

从数据库取一条记录出来一般有两种方法1.load()方法Student s = (Student)session.load(Student.class, 1);2.get()方法Student s = (Student)session.get(Student.class, 1);load()或者get()之后,对象是persistent状态

2017-06-30 19:22:14 533

原创 Hibernate——对象的三种状态

transient(瞬态)   内存中有一个对象,无idpersistent(持久化)内存中有一个对象,有id,缓存中有,数据库中有detached(分离)    内存中有一个对象,有id,缓存中没,数据库中有public void test() { Student s = new Student(); s.setName("lll"); s.setAg

2017-06-30 10:14:23 269

原创 Hibernate——JTA

上一篇提到的配置文件中的thread//当前的session的运行环境有四种取值jta、thread、managed、custom.Class常用thread和jta我们一般将事物分为两种1.connection事物,依赖数据库本身,只针对一个数据库2.jta事物,分布式,不止一个数据库假如要向两个数据库BD1和DB2中分别执行两个操作,一个操作

2017-06-29 15:32:02 433

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除