关于spring注入的一点遐想

小弟也是刚入门的程序员,不敢班门弄斧。只是在做项目的时候基于遭遇,产生了一点联想。在有开源框架支持的项目中,又有maven。在打包成jar之后,运行的时候并没有在日志的记录,看到没有加载spring配置文件的记录,只有hibernate的连接记录。但是jar包可以运行,功能也能实现。所以就产生了一点疑问,spring的注入是在什么时候进行的?难道是在打成jar包的时候,已经编译注入进去了吗?否则很难解释。编译过后,java文件已近变成了class文件,试问这个时候spring的注入还能否进行呢?可以向class文件中注入吗?还望有识之士,指点迷津。

2个回答

java ee容器中有一些接口,用来初始化组件,spring简单来说就是实现了这些接口,然后从这里读取配置,并且注入代码的。
具体可以google spring entrypoint

w89254362b
w89254362b 我迷惑一点,打成jar包的时候,jar里边已经是class文件了,按理说这个时候spring已经实现过注入了吧(猜测),如果不是的话,又是怎么运行的呢
大约 5 年之前 回复

是在tomcat启动的时候,web.xml中配置的监听。

w89254362b
w89254362b 关键是我没有使用tomcat,这不是一个web项目。呵呵
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
接口可以用spring注入吗?
![图片说明](https://img-ask.csdn.net/upload/201912/24/1577157689_384511.png) ++++++++++ ![图片说明](https://img-ask.csdn.net/upload/201912/24/1577157697_960705.png) ++++++++++ ![图片说明](https://img-ask.csdn.net/upload/201912/24/1577157707_7994.png) ++++++++++ spring只能注入实现类吗? 还是我有什么地方写错了呢? 请大神指教,谢谢。
关于spring bean注入的一个问题
今天看了大佬的代码,看到他们在注入RestTemplate是这样写的: ``` //大佬的对象注入方式 private final RestTemplate restTemplate; @Autowired public TestController(RestTemplate restTemplate) { this.restTemplate = restTemplate; } ----------------------------------------------------- //平时我的注入方式 @Autowired private RestTemplate restTemplate; ``` 想问问这两种写法有什么区别?
 Spring的设置注入和构造注入有什么好处?有没有浅显一点的解释额?
 Spring的设置注入和构造注入有什么好处?有没有浅显一点的解释额?求解释
关于spring构造器注入的问题
spring官方推荐使用构造器注入,但是构造器注入怎么解决循环注入的问题
spring注入的一个小问题
关于spring的注入,可以在XML中配置相关的bean,还可以使用AOP的Annotation方式,我想问下,在实际工作中,哪种方式比较常用啊,我刚学spring,希望知道的朋友能说下
关于spring 注入为null的一些问题
这是一个基于SSH框架的网站系统其中的登录模块,结果在登录的时候userserviceimpl始终是null 这个是DAO实现 ``` package dao; import entity.User; import org.springframework.orm.hibernate5.support.HibernateDaoSupport; import org.springframework.stereotype.Repository; import java.util.List; @Repository public class UserDAOImpl extends HibernateDaoSupport implements UserDAO { //增加用户 @Override public void addUser(User user){ getHibernateTemplate().save(user); } //查询验证用户是否存在 @Override public User findUser(User user){ User user1 = new User(); String hql = "from User user where user.username='" + user.getUsername() + "' and user.password= '" + user.getPassword() + "'"; //将查询出的结果放到List List<User> userlist = getHibernateTemplate().findByExample(user); //判断是否有查询结果,换句话说就是判断用户是否存在 if(userlist.size()>0){ //取出查询结果的第一个值 user1 = userlist.get(0); } return user1; } } ``` userService ``` package service; import dao.UserDAOImpl; import entity.User; import org.springframework.stereotype.Service; @Service public class UserServiceImpl implements UserService { //注入对象UserDAO private UserDAOImpl userdaoimpl; public void setUserDAOImpl(UserDAOImpl userdaoimpl) { this.userdaoimpl = userdaoimpl; } //保存用户信息 @Override public void addUser(User user){ this.userdaoimpl.addUser(user); } //查找验证用户信息 @Override public boolean findUser(User user){ User user1 = this.userdaoimpl.findUser(user); //DAO查询中已经判断当用户名密码都存在时才返回user1,这里只用判断用户名是否存在就行 if(user1.getUsername()!=null){ return true; }else{ return false; } } } ``` LoginAction ``` package action; import com.opensymphony.xwork2.ActionSupport; import entity.User; import org.springframework.beans.factory.annotation.Autowired; import service.UserService; import service.UserServiceImpl; public class LoginAction extends ActionSupport{ private User user; public void setUser(){ this.user=user; } private UserServiceImpl userserviceimpl; public void setUserServiceImpl(UserServiceImpl userserviceimpl) { this.userserviceimpl = userserviceimpl; } @Override public String execute() throws Exception{ boolean flag = userserviceimpl.findUser(user); if (flag) { return SUCCESS; } else { return INPUT; } } } ``` 配置文件 ``` <?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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd "> <!-- dbcp连接池 --> <bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" > <property name="driverClassName" value="com.mysql.jdbc.Driver"> </property> <property name="url" value="jdbc:mysql://localhost:3306/user_db"> </property> <property name="username" value="root"> </property> <property name="password" value="1234"> </property> </bean> <!--hibernate--> <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.MySQL55Dialect</prop> <prop key="hbm2ddl.auto">update</prop> <prop key="hibernate.connection.autocommit">true</prop> </props> </property> <property name="mappingResources"> <list> <value>entity/User.hbm.xml</value> </list> </property> </bean> <!--使用属性注入--> <bean id="User" class="entity.User"></bean> <bean id="UserDAO" class="dao.UserDAOImpl" scope="singleton"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <bean id="UserService" class="service.UserServiceImpl" scope="prototype"> <property name="userDAOImpl" ref="UserDAO"></property> </bean> <bean id="action.RegistAction" class="action.RegistAction" scope="prototype"> <property name="UserServiceImpl" ref="UserService"></property> </bean> <bean id="action.LoginAction" class="action.LoginAction" scope="prototype"> <property name="UserServiceImpl" ref="UserService"></property> </bean> </beans> ``` 在LoginAction中 userserviceimpl总是null
关于spring注入。。。启动报错
错误信息: 六月 18, 2015 11:15:17 上午 org.apache.catalina.core.StandardContext listenerStart 严重: Exception sending context initialized event to listener instance of class or --只要我spring uploadZipOrRarAction类注入uploadDao类就会报上述启动错误无论是set或构造注入,下面是spring配置 <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- tool --> <bean id="zip" class="cn.test.oop.unit.Zip"/> <bean id="uploadDao" class="cn.test.upload.service.UploadDaoImpl" p:hibernateTemplate-ref="hibernateTemplate" /> <bean id="uploadZipOrRarAction" class="cn.test.upload.action.UploadZipOrRarAction" > <constructor-arg index="0" ref="uploadDao"></constructor-arg> <constructor-arg index="1" ref="zip"></constructor-arg> </bean> action --- private UploadDaoImpl uploadDaoImpl; private Zip zip; //spring构造注入 public UploadZipOrRarAction(UploadDaoImpl uploadDaoImpl,Zip zip){ this.uploadDaoImpl=uploadDaoImpl; this.zip=zip; } 求大神解答
spring 注入时 哪个属性 控制注入顺序? A注入必须在B注入之后
spring 注入时 哪个属性 控制注入顺序? A注入必须在B注入之后
关于spring 注入dao的问题
A类 <br /> <br />@Service <br />Class A <br />{ <br />@Autowired <br /> private IDao baseDao; <br />..... <br />aa() <br />{ <br /> B xx =new B(); <br />&nbsp; xx.query();//调用B类中的query <br />} <br />} <br /> <br /> <br /> <br />Class B <br />{ <br />@Autowired <br />&nbsp;&nbsp;&nbsp; private IDao baseDao; <br />..... <br />query() <br />{ <br /> baseDao.getRow(..)&nbsp; //貌似B类中没有把baseDao注入进来,启动就报空指针错误。 <br />} <br />} <br /> <br /> <br />如果把A类方法中的 xx.query();改写成 xx.query(baseDao); 这样把A类中注入进来的baseDao传入B类来执行就没问题。。什么原因呢? <br /> <br />
spring注入本质是实现类实例化对象赋值给接口引用,例如一个集合放接口,其实放的是实现类的对象。
spring注入,本质其实就是实例化对象后赋值给接口的引用,在其他类要调用接口时,他不需要考虑实现类,直接和接口打交道,就是通过A d=new a(),但是对象都是由spring实例化,所以spring注入,就是将实例化对象给接口引用,然后来调用一些方法,所以我们在用spring时,是接口的引用。
spring 注入时 子类父类注入 后子类属性为空
有这样的结构设计类: 父类: package com.company.name.parent; public class CustomerInfoBO{ private XXXDao xXXDao; //xXXDao setter,getter } 子类: package com.company.name.children; public class CustomerInfoBO extends com.company.name.parent.CustomerInfoBO{ private XXXDao xXXDao; //xXXDao setter,getter // 此时 getter 方法会自动加上 @Override 注释,而且子类中无法调用 xXXDao.execMethod() 方法,报空指针。 基本的描述就是,子类和父类的名称属性名称都一样, 这样的话,子类spring注入的时候,不会把自己类中对应的属性自动注入。 求这样的子类父类同名、属性也同名的解决方案。
关于spring ioc 注解注入参数的问题
问下大神们spring ioc 注解注入如何传参数?像@controller或@Service这种注解 如果其注解的类构造函数必须要传参的话 注解是否能将其实例化并放入容器中?
关于Spring hibernateTemplate注入?
RT: 问题描述:每个数据访问层都对hibernateTemplate进行了注入,现想可不可以拦截DAO层,通过配置给每个层的hibernateTemplate进行注入?具体的实例更好
spring注入失败
最近想把以前的项目增加的service托给spring处理 [code="java"] <bean id="userBusiness" class="com.*.service.impl.UserBusinessImpl"> <property name="userDAL" ref="userDao"></property> </bean> <bean id="userDao" class="com.*.dao.impl.UserDALImpl"> </bean> [/code] UserDALImpl是原先先好的DAO层的类,有自己的查询数据库的一些实现.我现在只想把userDao注入到service层里面处理 [code="java"] UserBusinessImpl private UserDAL userDAL; public void setUserDAL(UserDAL userDAL) { this.userDAL = userDAL; } [/code] 感觉就是简单的注入,还是失败. spring不熟,各位指点下. [b]问题补充:[/b] *号是我项目的 名称,我没写出来,其实是有路径的 UserDALImpl是实现UserDAL 接口 [b]问题补充:[/b] 没有报错信息. 只是在执行 [code="java"] UserBusinessImpl.java private UserDAL userDAL; public void setUserDAL(UserDAL userDAL) { this.userDAL = userDAL; } public Person getUserFromEXTNO(String extNo) throws Exception { return userDAL.getUserFromEXTNO(extNo); } [/code] [code="java"] public class UserDALImpl extends BaseDAL implements UserDAL { // 初始化Log private Logger logger = Logger.getLogger(UserDALImpl.class); public UserDALImpl() throws Exception { } public Person getUserFromEXTNO(String extNo) throws Exception { 执行SQL } [/code] spring配置文件就这2个 [code="java"] <?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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"> <bean id="userBusiness" class="com.ccsee.happytrip.service.impl.UserBusinessImpl"> <property name="userDAL" ref="userDao"></property> </bean> <bean id="userDao" class="com.ccsee.happytrip.dao.impl.UserDALImpl"> </bean> </beans> [/code] 报的异常是在执行getUserFromEXTNO方法时候抛空指针,也就是注入失败,没把dao注入到service层中 [b]问题补充:[/b] [code="java"] UserDALImpl对象看看调用时是不是new的呢?? 如果是那就肯定错了 UserDALImpl 也得用spring注入 或者用applicationConexst.getbean取[/code] UserDALImpl对象我是打算把他注入到UserBusinessImpl中去的,在UserBusinessImpl中是用set接口进去的 至于UserDALImpl本身有自己的JDBC连接池以及一系列的操作. [b]问题补充:[/b] [code="java"] 不对吧 你是已经从bean工程里取出来了 然后执行dao的方法时候报的错么? 如果取出来了 就证明你配置没错 。。。。。你把堆栈信息贴过来 我看看是在哪掉用的时候出的空指针 [/code] 配置文件的写法应该是对的,服务器启动正常, 但是没有注入成功.在执行到UserBusinessImpl的时候抛空指针, [2009-12-04 17:08:18,125]-ERROR (UserLoginAction.java:93)| java.lang.NullPointerException at com.ccsee.happytrip.service.impl.UserBusinessImpl.getUserFromEXTNO(Us erBusinessImpl.java:67) [b]问题补充:[/b] [code="java"] UserBusinessImpl 如果不是通过spring get的 后面的照样无法注入成功 听我的试一下 我过去带的人就有这么错的 估计你的问题也是这个[/code] 没有明白你所说的spring get的 按我的理解就是,在action层,也使用同样的set注入.如果是这样的话,我有尝试过,但是是失败的,也是空指针,只不是报在action层了,也就是注入失败. [b]问题补充:[/b] [quote] 的确是没有获得到dao 你获得UserBusinessImpl 的方式应该不对吧 你是如何获得UserBusinessImpl 的? 那句代码贴出来看看 [/quote] UserBusiness business = new UserBusinessImpl(); 我是直接new的,我也尝试过像service层那样注入,一样没效果 [code="java"] 看你配置看不出有什么问题,有可能是DAO方法里某行报错了。 [/code] 应该还没到dao层,dao层的LOG都没打出来,应该就属于注入失败. [b]问题补充:[/b] [quote] 你new ClassPathXmlApplicationContext()的这个过程就是对配置文件的解析 以及按着你所配置的方式通过反射机制自动给你进行装配 如果没有这个过程 你直接new那就相当于在堆内存上开辟一个空的对象 里面没有任何的东西 所以你取出的dao是空 因为你没往里放东西啊,而UserBusinessImpl userBusinessImpl = (UserManager)factory.getBean("UserBusinessImpl ");是从已经放着解析并且装配好的所有对象的大容器里去取 所以你取出来的是装配好的啊 [/quote] 我把UserBusinessImpl改了下就可以了, [code="java"] public Person getUserFromEXTNO(String extNo) throws Exception { BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml"); UserDAL userDal = (UserDAL)factory.getBean("userDao"); return userDal.getUserFromEXTNO(extNo); } [/code] 但是为什么使用set注入不行 [b]问题补充:[/b] 非常谢谢各位的解答 现在的结果是,我在action,service层使用getBean都可以获取到实例,但是使用set注入都是失败的. [code="java"] <bean name="/userLoginAction" class="com.ccsee.happytrip.web.action.UserLoginAction"> <property name="userBusiness" ref="userBusiness"></property> </bean> <bean id="userBusiness" class="com.ccsee.happytrip.service.impl.UserBusinessImpl"> <property name="userDAL" ref="userDao"></property> </bean> <bean id="userDao" class="com.ccsee.happytrip.dao.impl.UserDALImpl"> </bean> [/code] action层 [code="java"] private UserBusiness userBusiness; public void setUserBusiness(UserBusiness userBusiness) { this.userBusiness = userBusiness; } Person user = userBusiness.getUserFromEXTNO(form.getUserName() .trim()); [/code] 如果使用getBean就行,有朋友说必须都使用spring拖管就行了,我现在 action和service的都放在spring托管中,dao没办法托管必须用原来的. 我想问下原因,谢谢. [b]问题补充:[/b] 我的struts有加载spring strust-config.xml [code="java"] <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"> <set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" /> </plug-in> [/code]
spring注入问题的成员
public class UserService{ private UserDao userDao; public void SetUserDao(UserDao userDao){ this.userDao=userDao; } public void save(){ userDao.save(); } } 在学习spring框架时候说要注入UserDao;但是我想问为什么不能直接使用userDao.save();而不需要注入呢? 第一次提问可能有些描述不清楚,希望大大们耐心指导
关于spring注入数据库的问题
![图片说明](https://img-ask.csdn.net/upload/201807/31/1533024710_368291.png) ![图片说明](https://img-ask.csdn.net/upload/201807/31/1533024736_236124.png) ![图片说明](https://img-ask.csdn.net/upload/201807/31/1533024814_740503.png) ![图片说明](https://img-ask.csdn.net/upload/201807/31/1533024866_106011.png) 请问这是什么问题?好懵逼。
关于Spring MVC 框架的SQL注入与XSS攻击
Spring MVC 框架中,如何在拦截器中获取request中的数据并过滤可能产生的sql注入与xss攻击
关于Spring依赖注入的疑问
1,比方说下面这个图,表现层Action依赖于服务层service,service又依赖于持久层DAO,那么DAO相当于是个老大,那么注入就是又大到小的顺序排,把DAO对象注入了service,再把service注入进了Action,我这么理解是正确的吧亲?因为我把这段话反过来说也一样成立-----Action注入service,service注入DAO,由小到大的顺序,这是错误理解对吧?) ![图片说明](https://img-ask.csdn.net/upload/201606/16/1466088026_96636.jpg) 2,还有个延伸问题,也许用DAO,Service,Action举例,这个层级关系表现的比较明显,如果是一群自定义类呢,互相的依赖关系没这么明显的,那要定谁注入谁,就完全靠主观判断了是吧 3,比方说A注入B,B注入C,那么我这个配置文件,必须按A--B--C的顺序写吗...
spring 全局变量 是写成 static好,还是通过 spring 注入好?
RT,求助大神。。。。。spring mvc 在引用一个全局共享的列表的时候是应该用static来定义好, 还是通过 spring 以单例模式注入好呀? 求解。。。
相见恨晚的超实用网站
搞学习 知乎: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# plc s1200 c#里氏转换原则 c# 主界面 c# do loop c#存为组套 模板 c# 停掉协程 c# rgb 读取图片 c# 图片颜色调整 最快 c#多张图片上传 c#密封类与密封方法
立即提问