hibernate不能删除和修改数据但是能查询,和新增询数据

不能删除和修改数据;但是能查,和新增询数据。删除和修改数据也不报错。这是最郁闷的,也不知道错在哪儿。我是用的hibernate实体注解来做的。

9个回答

最终还是自己解决了,伤不起啊。
图片说明

你用的hibernate是什么版本?是怎么获取transaction manager和session的?是怎么删除和修改数据的?把代码贴上来看看吧。

图片说明
图片说明
图片说明
图片说明

还是看不到你的getSession()是怎么实现的,SessionFactory是怎么管理的。
不过你在deleteUser这个方法里不要调用两次getSession(),只调用一次,确保你调用get方法和delete方法的时候用的是同一个session。

Session session = getSession();

user = (UserModel) session.get(UserModel.class, user.getuId());
session.delete(user);

图片说明

你没用Spring管理SessionFactory导致的

问题可能出在数据的guid码上,每一次添加都会生成一个唯一的GUID码,但是你删除的时候如果是通过其他的字段删除,可能会因为某些字段不能为空(比如说GUID)导致删除失败。只能通过查找GUID来单个的删除

什么意思,没大明白,说一下具体的解决方法好吗?我是吧整条数据查出来删除的啊。

可能会因为某些字段不能为空(比如说GUID)导致删除失败。只能通过查找GUID来单个的删除

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
spring+hibernate操作数据库,可以查询数据,但是不能添加数据
![图片说明](https://img-ask.csdn.net/upload/201704/20/1492676808_116734.jpg)![图片说明](https://img-ask.csdn.net/upload/201704/20/1492676698_458828.jpg)! 2017-04-20 14:10:46,066 [main] DEBUG [org.hibernate.engine.spi.ActionQueue] - Executing identity-insert immediately 2017-04-20 14:10:46,080 [main] DEBUG [org.hibernate.SQL] - insert into t_user2 (password, user_name) values (?, ?) Hibernate: insert into t_user2 (password, user_name) values (?, ?) 2017-04-20 14:10:46,121 [main] DEBUG [org.hibernate.resource.jdbc.internal.ResourceRegistryStandardImpl] - HHH000387: ResultSet's statement was not registered 2017-04-20 14:10:46,124 [main] DEBUG [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] - could not insert: [com.lk.domain.User] [insert into t_user2 (password, user_name) values (?, ?)] java.sql.SQLException: Invalid value for getInt() - '��
Hibernate两表 内连接查询 结果为空 在数据库中能查出数据 有哪些原因
Hibernate两表 内连接查询 结果为空 在数据库中能查出数据 有哪些原因
Hibernate操作mysql数据库point类型数据
数据库中表建立代码如图1,其中position列数据类型为point;表中数据如图2所示,使用jdbc对表中position进行修改的sql代码如图3。现在想使用hibernate来对该表进行操作,但不知道point类型数据该如何映射,各种尝试都没有成功。求hibernate对该数据的操作方法!!!!![图片说明](https://img-ask.csdn.net/upload/201801/20/1516441966_532231.png)![图片说明](https://img-ask.csdn.net/upload/201801/20/1516441981_142164.png)![图片说明](https://img-ask.csdn.net/upload/201801/20/1516441992_690585.png)
hibernate +springmvc +sqlserver 2008 能新增查询,不能修改删除
@Transactional public void update(Users users){ // em.merge(users); String sql =" update Users set login_name =:login_name,password =:password,phone_number =:phone_number,is_alarm =:is_alarm" + ",email=:email,user_name =:user_name,remark=:remark where user_id =:user_id "; Query query = em.createNativeQuery(sql); query.setParameter("user_id", users.getUser_id()); query.setParameter("user_name", users.getUser_name()); query.setParameter("login_name", users.getLogin_name()); query.setParameter("phone_number", users.getPhone_number()); query.setParameter("is_alarm", users.getIs_alarm()); query.setParameter("email", users.getEmail()); query.setParameter("remark",users.getRemark()); query.executeUpdate(); } <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.SQLServerDialect"/> <property name="hibernate.hbm2ddl.auto" value="auto"/> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.connection.autocommit" value="false"></property> <property name="hibernate.generate_statistics" value="true"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.cache.use_query_cache" value="true"/> <property name="hibernate.cache.use_second_level_cache" value="true" /> <property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider" /> <property name="jboss.entity.manager.factory.jndi.name" value="java:/algEntityManagerFactory"/> <property name="hibernate.jdbc.fetch_size" value="25"/> <!-- <property name="hibernate.default_schema" value="hcqs"/> --> </properties>
Hibernate 内连接查询 查不出数据 数据库能查出
//客户实体类 public class Customer { private Long cust_id; private String cust_name; private String cust_source; private String cust_industry; private String cust_level; private String cust_linkman; private String cust_phone; private String cust_mobile; //使用set集合,表达一对多关系 一个客户有很多个联系人 private Set<LinkMan> linkMens = new HashSet<LinkMan>(); public Long getCust_id() { return cust_id; } public void setCust_id(Long cust_id) { this.cust_id = cust_id; } public String getCust_name() { return cust_name; } public void setCust_name(String cust_name) { this.cust_name = cust_name; } public String getCust_source() { return cust_source; } public void setCust_source(String cust_source) { this.cust_source = cust_source; } public String getCust_industry() { return cust_industry; } public void setCust_industry(String cust_industry) { this.cust_industry = cust_industry; } public String getCust_level() { return cust_level; } public void setCust_level(String cust_level) { this.cust_level = cust_level; } public String getCust_linkman() { return cust_linkman; } public void setCust_linkman(String cust_linkman) { this.cust_linkman = cust_linkman; } public String getCust_phone() { return cust_phone; } public void setCust_phone(String cust_phone) { this.cust_phone = cust_phone; } public String getCust_mobile() { return cust_mobile; } public void setCust_mobile(String cust_mobile) { this.cust_mobile = cust_mobile; } public Set<LinkMan> getLinkMens() { return linkMens; } public void setLinkMens(Set<LinkMan> linkMens) { this.linkMens = linkMens; } @Override public String toString() { return "Customer [cust_id=" + cust_id + ", cust_name=" + cust_name + "]"; } } //客户类配置hibernate映射文件 <hibernate-mapping package="com.jm.domain"> <class name="Customer" table="cst_customer"> <id name="cust_id" column="cust_id" type="long"> <generator class="native"></generator> </id> <property name="cust_name" column="cust_name" type="java.lang.String"></property> <property name="cust_source" column="cust_source" type="java.lang.String"></property> <property name="cust_industry" column="cust_industry" type="java.lang.String"></property> <property name="cust_level" column="cust_level" type="java.lang.String"></property> <property name="cust_linkman" column="cust_linkman" type="java.lang.String"></property> <property name="cust_phone" column="cust_phone" type="java.lang.String"></property> <property name="cust_mobile" column="cust_mobile" type="java.lang.String"></property> <set name="linkMens" cascade="save-update"> <key column="lkm_cust_id"></key> <one-to-many class="LinkMan"/> </set> </class> </hibernate-mapping> package com.jm.domain; //联系人实体 public class LinkMan { private Long lkm_id; private Character lkm_gender; private String lkm_name; private String lkm_phone; private String lkm_email; private String lkm_qq; private String lkm_mobile; private String lkm_memo; private String lkm_position; //表达多对一关系很多个联系人属于一个客户 private Customer customer; public Long getLkm_id() { return lkm_id; } public void setLkm_id(Long lkm_id) { this.lkm_id = lkm_id; } public Character getLkm_gender() { return lkm_gender; } public void setLkm_gender(Character lkm_gender) { this.lkm_gender = lkm_gender; } public String getLkm_name() { return lkm_name; } public void setLkm_name(String lkm_name) { this.lkm_name = lkm_name; } public String getLkm_phone() { return lkm_phone; } public void setLkm_phone(String lkm_phone) { this.lkm_phone = lkm_phone; } public String getLkm_email() { return lkm_email; } public void setLkm_email(String lkm_email) { this.lkm_email = lkm_email; } public String getLkm_qq() { return lkm_qq; } public void setLkm_qq(String lkm_qq) { this.lkm_qq = lkm_qq; } public String getLkm_mobile() { return lkm_mobile; } public void setLkm_mobile(String lkm_mobile) { this.lkm_mobile = lkm_mobile; } public String getLkm_memo() { return lkm_memo; } public void setLkm_memo(String lkm_memo) { this.lkm_memo = lkm_memo; } public String getLkm_position() { return lkm_position; } public void setLkm_position(String lkm_position) { this.lkm_position = lkm_position; } public Customer getCustomer() { return customer; } public void setCustomer(Customer customer) { this.customer = customer; } public LinkMan() { } public String toString() { return "LinkMan [lkm_id=" + lkm_id + ", lkm_gender=" + lkm_gender + ", lkm_name=" + lkm_name + ", lkm_phone=" + lkm_phone + ", lkm_email=" + lkm_email + ", lkm_qq=" + lkm_qq + ", lkm_mobile=" + lkm_mobile + ", lkm_memo=" + lkm_memo + ", lkm_position=" + lkm_position + "]"; } } //联系人类配置hibernate映射文件 <hibernate-mapping package="com.jm.domain"> <class name="LinkMan" table="cst_linkman"> <id name="lkm_id" column="lkm_id" type="long"> <generator class="native"></generator> </id> <property name="lkm_gender" column="lkm_gender"></property> <property name="lkm_name" column="lkm_name" type="string"></property> <property name="lkm_phone" column="lkm_phone" type="java.lang.String"></property> <property name="lkm_email" column="lkm_email" type="java.lang.String"></property> <property name="lkm_qq" column="lkm_qq" type="java.lang.String"></property> <property name="lkm_mobile" column="lkm_mobile" type="java.lang.String"></property> <property name="lkm_memo" column="lkm_memo" type="java.lang.String"></property> <property name="lkm_position" column="lkm_position" type="java.lang.String"></property> <many-to-one name="customer" column="lkm_cust_id" class="Customer" > </many-to-one> </class> </hibernate-mapping> public class Demo2 { public static void fun() { Session session = HibernateUtils.openSession(); Transaction tx = session.beginTransaction(); //---------------------------------------------------- String hql = " from Customer c inner join fetch c.linkMens "; Query query = session.createQuery(hql); List<Customer> list = query.list(); System.out.println(list); //---------------------------------------------------- tx.commit(); session.close(); } public static void main(String[] args) { fun(); } }
关于hibernate修改数据的疑惑
各位大神,请教一个关于hibernate修改数据的问题,看代码 ``` public void addUser(){ System.out.println("begin......."); Session session = null; Transaction transaction = null; session = SessionFactoryUtil.getSessionFactory().openSession(); transaction = session.beginTransaction(); System.out.println("开始修改用户信息"); User u = (User)session.get(User.class, 2); u.setUsername("ddTest"); session.saveOrUpdate(u); System.out.println("修改用户信息成功。。。。"); transaction.commit(); session.close(); System.out.println("end......."); } ``` 这样可以把一个ID为2的用户数据name改为ddTest,没有什么疑问。再看 ``` public void addUser(){ System.out.println("begin......."); Session session = null; Transaction transaction = null; session = SessionFactoryUtil.getSessionFactory().openSession(); transaction = session.beginTransaction(); System.out.println("开始修改用户信息"); User u = (User)session.get(User.class, 2); u.setUsername("ddTest"); //session.saveOrUpdate(u); System.out.println("修改用户信息成功。。。。"); transaction.commit(); session.close(); System.out.println("end......."); } ``` 这样,不用saveOrUpdate,数据一样被成功修改。这是为什么呢?是事务在提交时把一级缓存里的对像flush到数据库了吗?那如果这样的话要saveOrUpdate之类的方法还有什么用呢?求高手大神解惑,小弟在此感谢。
Hibernate向Mysql数据库插入数据出现乱码问号
在MyEclipse环境下向Mysql数据库插入数据出现乱码问号,于是做了如下设置: MyEclipse字符编码已经设为utf-8(window->preference...设置),MySQL的my.ini下设为default-character-set=utf8,hibernate.cfg.xml下<property name="connection.url">jdbc:mysql://localhost:3306/users?useUnicode=true&amp;characterEncoding=utf-8 </property> 这是就插入不了数据了,为什么啊?
关于hibernate只能查询不能增加修改删除数据的问题
spring事务配置如下 ``` <!-- 配置SessionFactory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> <prop key="hibernate.hbm2ddl.auto">update</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> <prop key="hibernate.connection.autocommit">true</prop> </props> </property> <property name="annotatedClasses"> <list> <value>com.sunsharing.model.User</value> </list> </property> </bean> <!-- 自动扫描配置 --> <context:annotation-config /> <context:component-scan base-package="com.sunsharing.dao"/> <!-- 支持 @Transactional 标记 --> <tx:annotation-driven transaction-manager="transactionManager"/> <!-- 定义事务管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> ``` dao类如下 ``` @Resource(name="sessionFactory") private void setSessionFacoty(SessionFactory sessionFacoty){ super.setSessionFactory(sessionFacoty); } public void addUser(User user) { getHibernateTemplate().getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); this.getHibernateTemplate().save(user); } ```
hibernate 查询 添加 操作后,查询不到新添加的数据
structs+hibernate+mysql+tomcate 开发,对新闻进行操作,首先执行查询的action 操作,得到一个查询结果 ; 现在再通过 action 添加一条新闻信息至数据库,此时再查询时候不能查出刚刚添加的数据,得到的结果还是第一次查的,但是数据库中已有新添加的记录。重启tomcate 服务器后再查询就有了。 请问这是为何? 一直不能解决,请求支援。
json 返回hibernate load查询数据出错
我用get()方法查询出来的数据print到页面不会有错!但是用load()方法查询出来的数据print到页面是就出现错误!如果在实体中设置lazy="false"也不会出错!哪位高手给说明一下原因, ![图片说明](https://img-ask.csdn.net/upload/201505/26/1432606681_37147.png) ![图片说明](https://img-ask.csdn.net/upload/201505/26/1432606693_680819.png) ![图片说明](https://img-ask.csdn.net/upload/201505/26/1432606704_356516.png) ![图片说明](https://img-ask.csdn.net/upload/201505/26/1432606712_233870.png)
hibernate如何从数据库查询到map集合
如题,sql使用了union 将2个表的结果合并到一个表 而且想要查询出来的是map集合, 键值对形势的 比如 "name":"rr","age":"14"; 现在发现如果想要返回map集合执行使用原生sql但是 该dao已经继承了 hibernate的父类了。 求支招,最好返回值为ListOrderMap 有方法吗。
hibernate 查询数据库
用hibernate查询数据,数据如果是英文就没错 ,用中文就出错了,但是 我在Naive for MySQL 用sql查询就可以查出带中文的结果!![![![图片说明](https://img-ask.csdn.net/upload/201712/02/1512220844_573747.png)图片说明](https://img-ask.csdn.net/upload/201712/02/1512220836_344301.png)图片说明](https://img-ask.csdn.net/upload/201712/02/1512220822_16841.png)
Hibernate 数据库连接
数据库不能自动建表,启动时也不见报错。配置代码如下: <?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:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-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/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" default-lazy-init="false"> <!-- 加载jdbc.properties配置文件--> <aop:aspectj-autoproxy /> <context:annotation-config/> <context:component-scan base-package="com.bwgl"></context:component-scan> <!-- 加载连接数据库配置文件:db.properties --> <context:property-placeholder location="classpath:properties/db.properties"/> <!-- 配置数据源需要commons-dbcp.jar和commons-pool.jar- --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${driverClassName}" /> <property name="url" value="${url}" /> <property name="username" value="${username}" /> <property name="password" value="${password}" /> <!-- 连接池启动时的初始值 --> <property name="initialSize" value="5" /> <!-- 连接池的最大值 --> <property name="maxActive" value="15" /> <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 --> <property name="maxIdle" value="10" /> <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 --> <property name="minIdle" value="5" /> </bean><!-- 配置Spring数据源事务管理器 --> <bean id="transactionManagerBean" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <!--hibernate 配置--> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> <!-- 配置ORM文件 --> <property name="mappingResources"> <list> <value>com/bwgl/res/RyCuster.hbm.xml</value> <value>com/bwgl/res/RyGuroom.hbm.xml</value> <value>com/bwgl/res/RyType.hbm.xml</value> <value>com/bwgl/res/RyRetroom.hbm.xml</value> <value>com/bwgl/res/RyEnter.hbm.xml</value> <value>com/bwgl/res/RyUser.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <value> hibernate.dialect=org.hibernate.dialect.OracleDialect hibernate.show_sql=true hibernate.format_sql=false hibernate.use_sql_comments=true hibernate.hbm2ddl.auto=update </value> </property> </bean> <!-- 基于注解(@Transactional)的事务管理 --> <!-- <tx:annotation-driven transaction-manager="transactionManagerBean"/>--> <!-- 定义事务通知,指定事务管理器 --> <tx:advice id="transactionAdvice" transaction-manager="transactionManagerBean"> <tx:attributes> <!-- 设置事务行为 --> <tx:method name="add*" propagation="REQUIRED" /> <tx:method name="delete*" propagation="REQUIRED" /> <tx:method name="update*" propagation="REQUIRED" /> <tx:method name="save*" propagation="REQUIRED" rollback-for="Exception" /> <tx:method name="set*" propagation="REQUIRED" /> <tx:method name="modify*" propagation="REQUIRED" /> <!-- 其它方法是用默认的事务行为 --> <tx:method name="*" propagation="NOT_SUPPORTED" read-only="true" /> </tx:attributes> </tx:advice> <aop:config> <!-- 定义切入点;确定要拦截的方法(拦截所有类DepartServiceImpl中的方法) --> <aop:pointcut id="filterMethods" expression="execution(* com.bwgl.service..*.*(..))" /> <!-- 定义事务通知 --> <aop:advisor pointcut-ref="filterMethods" advice-ref="transactionAdvice"/> </aop:config> </beans>
Hibernate-jpa查询某个数据表是否存在以及实现创建
Hibernate-jpa查询某个数据表是否存在以及实现创建
关于hibernate 一对多插入数据的问题
现在出现了一个问题, 主表和副表通过1对多的关系关联配置,所有的配置都完成了。 在做关联处理时,副表的查询是成功的,但是在对副表进行插入数据的处理时, 数据不能被插入,从打印的日志来看,副表的insert语句都没有被执行, 请问有没有人遇到过这种问题?是什么原因造成的?谢谢
hibernate查询的数据与数据库中的数据部同步问题
在数据库中增加ID相同的一条数据后,数据库里可以看出已经增加成功,但我用hibernate以下两种方法查询相同ID的数据时,得到的还是之前查询的数据,新增加的时间没有被找出来,第二种我ssion.flush();还是没有新增的数据,这是为什么?怎么解决呢? 谢谢哪位能指点一下我,谢了。 public ResultInfo<BlkCategoryBlock> findCategoryBlockByBlockId( Integer blockId,PageInfo pageInfo) { StringBuffer hql = new StringBuffer(); hql.append("from BlkCategoryBlock b where b.blkBlock.blockId="); hql.append(blockId); hql.append(" order by b.id desc"); return find(hql.toString(), pageInfo); } public List<BlkCategoryBlock> findCategoryBlockByBlockId(Integer blockId) { StringBuffer hql = new StringBuffer(); Session session=this.getHibernateTemplate().getSessionFactory().getCurrentSession(); Query query=session.createQuery("from BlkCategoryBlock b where b.blkBlock.blockId=? order by b.id desc"); query.setParameter(0,blockId); List <BlkCategoryBlock>list=query.list(); session.flush(); return list; }
HIbernate怎么表怎么去和数据库映射
HIbernate怎么表怎么去和数据库映射
hibernate4为什么在执行save ()后直接查询直接查询不到数据?
![图片说明](https://img-ask.csdn.net/upload/201511/18/1447830636_399666.png)hibernate4为什么在执行save ()后直接查询直接查询不到数据 同样的配置在hibernate3这样是能查询到数据的,换到hibernate4就是查不到, 就像save()操作没有把对象缓存一样,这样是为什么呀?下面是配置 <property name="dialect"> org.hibernate.dialect.MySQL5InnoDBDialect </property> <property name="current_session_context_class">jta</property> <property name="hibernate.transaction.factory_class"> org.hibernate.transaction.JTATransactionFactory </property> <property name="hibernate.transaction.manager_lookup_class"> com.atomikos.icatch.jta.hibernate3.TransactionManagerLookup </property> <property name="connection.release_mode">auto</property> <property name="hibernate.transaction.flush_before_completion"> true </property> <property name="hibernate.transaction.auto_close_session"> true </property> 事务用的JTA java代码时在同一个事务里添加和查询的: User user = new User() user.setOid("123"); ... Dao.save(user); list lst = Dao.query("User","where oid='123'"); 结果lst为空 理论上save后对象应该缓存在Session里的吧,查询的话也应该查询到缓存里对象吧,可是为什么查询不到呢? 经过验证,对象确实在session里,但是在同一个事务内就是查询不到,为什么呢?
hibernate 不能插入数据库 汉字问题
使用hibernate框架,页面编码gb2312,使用过了过滤器编码gb2312,数据库编码好像是utf-8的 插入的时候总是抱 Data too long for column ... ... 的错。
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
花了20分钟,给女朋友们写了一个web版群聊程序
参考博客 [1]https://www.byteslounge.com/tutorials/java-ee-html5-websocket-example
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
开源一个功能完整的SpringBoot项目框架
福利来了,给大家带来一个福利。 最近想了解一下有关Spring Boot的开源项目,看了很多开源的框架,大多是一些demo或者是一个未成形的项目,基本功能都不完整,尤其是用户权限和菜单方面几乎没有完整的。 想到我之前做的框架,里面通用模块有:用户模块,权限模块,菜单模块,功能模块也齐全了,每一个功能都是完整的。 打算把这个框架分享出来,供大家使用和学习。 为什么用框架? 框架可以学习整体
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch
深深的码丨Java HashMap 透析
HashMap 相关概念 HashTab、HashMap、TreeMap 均以键值对像是存储或操作数据元素。HashTab继承自Dictionary,HashMap、TreeMap继承自AbstractMap,三者均实现Map接口 **HashTab:**同步哈希表,不支持null键或值,因为同步导致性能影响,很少被使用 **HashMap:**应用较多的非同步哈希表,支持null键或值,是键值对...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
JDK12 Collectors.teeing 你真的需要了解一下
前言 在 Java 12 里面有个非常好用但在官方 JEP 没有公布的功能,因为它只是 Collector 中的一个小改动,它的作用是 merge 两个 collector 的结果,这句话显得很抽象,老规矩,我们先来看个图(这真是一个不和谐的图????): 管道改造经常会用这个小东西,通常我们叫它「三通」,它的主要作用就是将 downstream1 和 downstre...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
相关热词 如何提升c#开发能力 矩阵乘法c# c#调用谷歌浏览器 c# 去空格去转义符 c#用户登录窗体代码 c# 流 c# linux 可视化 c# mvc 返回图片 c# 像素空间 c# 日期 最后一天
立即提问