毕业于内蒙古财经大学计算机系,在校期间专业成绩优秀。曾参加 ACM 获得二等奖,团体程序设计天梯赛三等奖。毕业论文获得优秀。 对技术有源发的兴趣,持续学习C++,java,python 等前沿技术,并独立完成多个兴趣项目。 成功使用Pathon/Java开发一个可以自动识别并下载他人发送过来的视频的软件
可兼职时间 自由职业,时间充裕
可兼职地点 天津 市区内
1. 熟练掌握 H5,CSS3,熟悉各种页面的布局,高质量还原设计图 2. 熟练掌握 JavaScript 编程,ES6 版本规范。DOM 事件和 API 3. 熟练掌握 Ajax,axios,Promise 等技术 4. 熟悉掌握 Vue,React,react-router-dom v5 v6 版本,mobx,react-cli 5. 熟悉 Node.js,express 框架 6. 熟悉 element-ui,Ant Design 等 UI 框架 7. 熟悉 ReactNative 框架开发跨平台 APP 8. Git 版本控制工具熟悉版本控制工具 Git,熟悉常见指令
可兼职时间 周六、周日、工作日
可兼职地点 天津 天津
毕业于太原理工大学现代科技学院,毕业后就职岗位为:java工程师,参与公司主要产品的后端开发工作; 后转为产品经理岗位,负责外包项目的产品规划以及原型设计、需规编写等工作,在职期间,主要参与智慧校园的功能设计工作;以及项目质量把控和功能测试等工作,做到对产品的整体负责;工作4年后晋升为高级产品经理。
可兼职时间 工作日
可兼职地点 天津 全域
参与过多个项目的开发,有团队管理经验,熟悉常见的业务处理,能快速融入团队; 性格稳重,待人真诚,乐于与同事及领导沟通,以便快速解决项目中遇到的问题; 对工作认真负责,抗压力强,执行力强,乐于从事有挑战的工作; 逻辑思维能力强,学习能力强,能不断提高工作能力与综合素质,与企业同步发展。
可兼职地点 天津 全境
熟悉使用 Vue、Element UI、微信小程序 熟练 Mysql、Oracle、Sql server、Redis、MongoDB 熟练 SpringBoot、Spring Security Oauth2、Mybatis、MybatisPlus 熟练使用 SpringCloud Alibaba以及其组件 GateWay、OpenFeign 调用、任务调度 XXL-Job 熟悉使用 ShardingSphere-JDBC 分库分表、Mycat 读写分离、Apache Skywalking、Seata 熟悉使用 RabbitMQ、ElasticSearch、WebSocket、Nginx 熟悉使用通过 Git、JenKins、Docker、Kubernetes、Rancher 实现CI/CD
可兼职地点 天津 华苑、中北镇
毕业后一直从事软件开发,Linux服务端开发、主要使用JAVA、python语言。 自2015年开始介入Android端开发。 自2022年开始介入vue开发、uniapp小程序,自此pc端、移动端、服务端开发等都有涉及,并独立完成过多个平台项目。 服务端开发框架:Spring Boot、spring cloud、redis、mybatis/mybatis_puls、rabbitmq/kafka、nginx
可兼职地点 天津
掌握框架:Spring Boot;Spring Cloud;SpringMVC、Spring、MyBatis;MyBatis-Plus,以及Gradle、Maven等项目构建工具 熟 练: 数据库MySQL、Oracle、MongoDB。 熟 悉: 消息中间件RabbitMQ、缓存中间件Redis。 熟 悉: Linux基本指令以及Linux服务器部署。 了 解: Elasticsearch、Docker、K8s、Seata、Spring Boot单元测试 掌握其他: AngularJS、JSP、JDBC、JSTL、jQuery、Javascript、Ajax、EL表达式等主流技术 熟练使用: Intellij IDEA、WebStorm、Postman、Navicat for MySQL、Git、Sourcetree、FinalShell、Typora、Jenkins、Wiki、HBuilder、Eclispe等工具。
毕业于北京外国语大学计算机信息系统专业,毕业后从事java开发5年以上,接触过金融,电商,社区项目等 1.具有扎实的 Java 基础,对面向对象编程有深刻的理解,熟练掌握 java IO 流、集合、多线程、反射, 泛型,注解,网络编程等基础开发技术; 2.对 Java 虚拟机、JMM、垃圾收集机制、GC 算法、JVM 常用配置参数、GC 参数、classLoader、锁 机制、JVM 故障分析,jmap,jstack 等 jdk 提供的工具命令,性能监控工具(java visualVM),JVM 参数 调优有一定了解; 3.熟悉 java 常用的设计模式以及常用算法以及常用的数据结构; 4.熟悉 TCPIP 协议,HTTP 协议,OAUTH2 协议等; 5.熟练掌握 SSM 等框架使用,熟悉 spring IOC ,springAop springs 事物核心源码,阅读过 springmvc 请求流程核心源码以及 springboot 自动装配原理; 6.熟练掌握 SQL 语言,熟练使用 Oracle、MySQL 数据库进行 javaEE 开发,基本的 MySQL 性能调优, SQL 优化等; 7.熟练使用 Redis,MQ,Springboot,Springcloud 等常用微服务框架技术,了解常用的高并发解决方 案; 8.熟悉 WebSphere,Tomcat,ftp 文件服务器,FastDFS 图片服务器,Nginx 负载均衡,Tomcat 性 能调优等服务器端技术
15年底自己创业,负责自己产品的研发和迭代。16年六月份加入天迅达任前端负责人,为更多创业者提供技术服务。深刻了解移动端web,PCweb页面构建。以及各种兼容处理,性能瓶颈优化,插件封装,页面加载流程。曾发布多款插件。熟练掌握html5,css3,jquery,js,es6,nodejs,小程序开发,less,bootstrap,zepto,Jquerymobile等。并且有java,php项目经验。
可兼职地点 天津 西青,南开,和平
1、擅长制作动态表单拖拽、流程图设计器等插件,搭建前端脚手架,自行编译封装前端npm组件,擅长对activiti进行二次封装,实现工作流市场上常见的(串并)会签、加签、抢办、定时任务、子流程等各种工作流中的高级功能 2、熟练掌握IntelX86汇编语言的使用,利用masm编译器制作dll动态链接库及可执行文件,熟悉windows操作系统内核进程与内存原理,善于使用OllyDbg进行逆向分析破解,了解软件加壳脱壳原理,并掌握脱壳方法,熟练使用C语言为软件打动态补丁,曾自行用汇编语言制作过exe可执行文件解析器,擅长对exe程序进行破解,熟练掌握各种windowsApihook手法 3、前端方面熟练掌握vue,react的使用,能够独立搭建整体前端项目,熟练使用原生js,dom,jQuery,掌握ES6的基本使用规范、熟练掌握CSS3、SCSS、SVG矢量图。 4、熟练掌握MySQL、Oracle等关系型数据库以及MongoDB和Redis缓存的使用。 5、熟悉JAVA开源框架Spring Boot、Spring Cloud、Mybatis plus、Shiro、Rabbitmq、Activiti、Jbpm等。 6、掌握Docker管理,nginx配置,有Java项目部署经验。 7、会搭建Maven私有库,使用过Nexus。会搭建Gitlab仓库。
可兼职时间 周六、工作日
可兼职地点 天津 天津市
使用Java、Shell、Python等语言,框架从早期的SSH一直迭代使用到现在的Spring boot 、Spring cloud微服务架构,数据库使用Oracle及Mysql,MyBatis持久层框架,Redis,了解Docker容器技术,以及容器集中化管理平台K8S,还有其他主流常用的中间件和插件。
1、4年短视频运营经验,了解短视频广告/内容生产全流程,熟悉各新媒体平台运行逻辑。 2、掌握各类专业软件如 PR、FCPX、PS等各类非编软件与新媒体相关工具。熟练掌握 AI 工具的底层逻辑与运用,能够针对不同 使用场景优化 Prompt。 3、时刻关注最新的互联网动态,有数据化思维,具备良好的文案能力,能独立撰写原创内容。 4、善于沟通,责任心强。执行力高,学习能力强,并且在持续不断地提升自己;希望从事互联网运营工作并且有更长远的发展。
可兼职地点 天津 津南
使用laravel/eggjs进行后端开发(tp/yii也会,都用过),会centos基础命令行,会编写一些shell脚本满足特殊功能需求,多种对接数据接口经验,对接短信,对接支付,对接ai智能平台,对接人脸识别,停车场闸机等物联网系统,短信接口,税务接口,熟练使用redis,mysql,tidb,clickhouse,会配置ngixn,熟练使用基于vue的(tdesign/antd/element/wapp),可以开发安卓和ios app
多年家居、室内设计行业资讯经验,了解目前互联网家装市场情况、装饰趋势潮流,策划线上线下活动,针对网站的构架进行合理化建议及原型设计。掌握web层面设计及前端切图。运营设计约微信号实现0-1的用户积累。同时对摄影、旅游、母婴等领域有涉猎研究。现为全职奶爸一枚,可接手各类soho工作。
可兼职地点 天津 市内六区
毕业后一直从事软件开发的工作,迄今有近4年的JAVA与web开发经验。熟练掌握JavaScript,SpringBoot,SSM,MVC,Vue,html,MySql等技术,熟悉UniAPP开发小程序技术。熟练使用Eclipse, Tomcat,idea等软件开发工具。具备良好的沟通能力,工作态度严谨,团队意识和学习能力强。
一、Java 技术经验 面向对象设计原则的深入理解与应用:在构建大型项目时,遵循单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则等,可以使代码更具可维护性、可扩展性和可复用性。例如,在设计一个电商系统时,将用户管理、订单管理、商品管理等功能分别封装在不同的类中,每个类只负责单一的职责,这样当需求变更时,只需要修改对应的类,而不会影响到其他模块。 异常处理机制的优化:合理的异常处理可以提高程序的稳定性和健壮性。在捕获异常时,尽量捕获具体的异常类型,而不是使用宽泛的 Exception 类,这样可以更准确地定位和解决问题。同时,在异常处理块中,要确保资源的正确释放,例如使用 try - catch - finally 结构关闭数据库连接、文件流等资源。例如: 多线程编程的注意事项:在涉及到多线程的场景中,要注意线程安全问题。避免多个线程同时访问和修改共享资源,可使用 synchronized 关键字、Lock 接口或者并发包中的 ConcurrentHashMap 等线程安全的类。同时,合理地使用线程池可以提高线程的管理效率和性能。例如,在一个高并发的 Web 应用中,使用 ThreadPoolExecutor 来创建线程池,设置核心线程数、最大线程数、任务队列容量等参数,以适应不同的业务负载。 性能优化技巧: 减少对象创建:避免在循环中频繁创建对象,可以将对象的创建移到循环外部。例如,在一个需要多次进行字符串拼接的场景中,使用 StringBuilder 或 StringBuffer 类,并且尽量复用已有的 StringBuilder 对象,而不是每次都创建新的。 合理使用缓存:对于一些频繁访问且数据变化不大的数据,可以使用缓存机制,如 Ehcache、Redis 等。例如,在一个新闻网站中,将热门新闻的列表缓存起来,减少数据库的查询次数,提高系统的响应速度。 优化算法和数据结构:根据具体的业务需求选择合适的算法和数据结构。例如,在查找操作频繁的场景中,使用 HashMap 或 TreeMap 比使用 ArrayList 进行线性查找效率更高。 二、Vue 技术经验 组件化开发的最佳实践:将页面拆分成多个可复用的组件是 Vue 开发的核心思想之一。在组件设计时,要遵循高内聚、低耦合的原则,每个组件只负责自己的业务逻辑和视图展示。通过合理地定义组件的 props 和 $emit 事件,实现父子组件之间的数据传递和交互。例如,在一个电商商品列表页面中,将商品列表项封装成一个单独的组件,父组件通过 props 传递商品数据给子组件,子组件通过 $emit 事件通知父组件商品的点击等操作。 Vuex 的使用场景与优化:Vuex 是 Vue 的状态管理模式,适用于管理应用的全局状态。在使用 Vuex 时,要明确哪些状态需要存储在全局状态中,避免过度使用。同时,合理地组织 state、mutation、action 和 getter,可以使代码结构更加清晰。例如,在一个多页面的单页应用中,将用户的登录状态、用户信息等存储在 Vuex 的 state 中,通过 mutation 来修改状态,通过 action 来处理异步操作,如登录请求等。 路由的管理与导航守卫的应用:Vue Router 用于管理应用的路由。在配置路由时,要根据业务需求合理地设置路由的路径、组件和参数。导航守卫(如 beforeEach、beforeEnter 等)可以在路由导航过程中进行权限验证、页面跳转控制等操作。例如,在一个需要用户登录才能访问某些页面的应用中,使用 beforeEach 守卫来检查用户的登录状态,如果未登录则跳转到登录页面。 性能优化方面: 代码拆分:使用动态导入(import())将应用的代码拆分成多个块,实现按需加载,减少初始加载时间。例如,在一个大型的单页应用中,将一些不常用的页面组件进行代码拆分,当用户访问到这些页面时才加载对应的代码块。 虚拟列表:对于长列表数据的展示,可以使用虚拟列表技术,如 vue - virtual - list 插件。它只渲染可见区域的列表项,大大提高了页面的渲染性能和滚动流畅度。 图片优化:对图片进行压缩处理,选择合适的图片格式(如 WebP),并且使用 lazy - load 插件实现图片的懒加载,减少页面加载时的资源请求数量。 三、MongoDB 技术经验 数据模型设计的要点:MongoDB 是一个文档型数据库,其数据模型设计与关系型数据库有所不同。在设计数据模型时,要充分考虑数据的读写模式和查询需求。例如,对于一个社交网络应用,将用户的基本信息、动态、好友关系等相关数据存储在一个文档中,可以减少查询时的连接操作,提高读取性能。但同时也要注意避免文档过大,导致存储和查询效率降低。 索引的创建与优化:合理的索引可以显著提高查询性能。根据查询条件创建合适的单字段索引、复合索引或文本索引。例如,在一个电商订单查询系统中,根据订单编号、用户 ID、订单状态等常用查询字段创建索引。同时,要定期监控索引的使用情况,避免创建过多不必要的索引,因为索引也会占用额外的存储空间和影响写入性能。 副本集与分片集群的搭建与维护:为了提高 MongoDB 的可用性和扩展性,可以搭建副本集和分片集群。副本集用于数据冗余和故障恢复,分片集群用于处理大规模数据存储和高并发读写。在搭建过程中,要合理配置副本集成员的角色和分片集群的分片键,确保数据的均衡分布和高效读写。同时,要定期进行数据备份和恢复演练,以应对可能出现的数据丢失或故障情况。 数据操作的优化: 批量操作:在进行插入、更新或删除操作时,尽量使用批量操作方法,减少与数据库的交互次数。例如,使用 bulkWrite 方法一次性插入或更新多个文档,提高操作效率。 原子操作:利用 MongoDB 的原子操作功能,如 $inc(原子增加)、$set(原子设置)等,确保数据的一致性和并发操作的安全性。例如,在一个统计页面访问量的场景中,使用 $inc 原子操作对访问量字段进行增加,避免并发访问时数据不一致的问题。 四、uniapp 技术经验 跨平台开发的适配技巧:uniapp 可以实现一套代码多平台发布,但是不同平台(如微信小程序、H5、APP 等)在样式和功能上可能存在一些差异。在开发过程中,要使用条件编译(#ifdef、#ifndef)来针对不同平台编写特定的代码。例如,在微信小程序中可能需要使用微信的原生组件,而在 H5 中则使用普通的 HTML 元素,通过条件编译可以在不同平台上正确地展示和运行。 组件与页面的复用:uniapp 支持将组件和页面进行复用。在创建组件时,要注意组件的通用性和可配置性,通过 props 传递参数来实现不同场景下的复用。对于一些常用的页面布局,如列表页、详情页等,可以创建模板页面,通过传递不同的数据和配置参数来生成具体的页面。例如,创建一个通用的商品列表组件,通过 props 传递商品数据列表和列表样式等参数,在不同的商品展示页面中复用该组件。 性能优化策略: 分包加载:对于体积较大的应用,可以使用分包加载技术,将应用划分为多个包,在需要时按需加载。例如,将一些不常用的功能模块单独分包,当用户使用到这些功能时才进行加载,减少初始加载时间。 图片优化:同 Vue 开发一样,对图片进行压缩和懒加载处理。uniapp 提供了 image 组件的 lazy - load 属性,可以方便地实现图片懒加载。同时,选择合适的图片格式,如 WebP 在支持的平台上可以有效减少图片文件大小。 页面预加载:对于一些用户经常访问的页面,可以使用页面预加载技术,提前将页面加载到内存中,提高用户切换页面的速度。例如,在一个电商应用中,将商品详情页进行预加载,当用户从商品列表页点击进入详情页时可以更快地展示页面内容。 与原生功能的集成:在一些场景下,可能需要调用原生设备的功能,如摄像头、定位、蓝牙等。uniapp 提供了 uni - native 插件市场,可以方便地引入第三方插件来实现与原生功能的集成。在使用插件时,要注意插件的兼容性和版本更新,确保在不同平台上都能正常使用。例如,使用 uni - camera 插件调用手机摄像头进行拍照功能的实现。 五、MySQL 技术经验 数据库设计的规范与优化:在设计 MySQL 数据库时,要遵循数据库设计的范式(如第一范式、第二范式、第三范式等),确保数据的完整性和一致性。同时,要根据业务需求合理地设计表结构、字段类型和约束。例如,在一个用户管理系统中,将用户的基本信息、联系方式、登录信息等分别存储在不同的表中,通过主键和外键建立关联关系。并且根据字段的取值范围选择合适的数据类型,如对于年龄字段使用 TINYINT 类型,而不是占用较大存储空间的 INT 类型。 查询优化的方法: 使用索引:根据查询条件创建合适的索引,索引可以大大提高查询效率。但是要注意避免创建过多的索引,因为索引会占用额外的存储空间,并且在插入、更新和删除操作时会增加时间开销。例如,在一个订单查询系统中,根据订单编号、用户 ID、订单日期等常用查询字段创建索引。 优化查询语句:编写高效的查询语句,避免使用子查询、全表扫描等性能较低的操作。可以通过 JOIN 操作来关联多个表,减少查询的复杂度。例如,在查询用户及其订单信息时,使用 INNER JOIN 语句将用户表和订单表进行关联查询,而不是通过多次子查询来获取数据。 分析查询执行计划:使用 EXPLAIN 关键字分析查询语句的执行计划,了解数据库是如何执行查询的,从而找出性能瓶颈并进行优化。例如,通过查看执行计划中的 type 字段,如果出现 ALL 表示全表扫描,需要进一步优化查询语句或创建合适的索引。 事务处理的应用:在涉及到多个数据库操作需要保证原子性的场景中,使用事务处理。例如,在一个转账操作中,需要同时更新转出账户和转入账户的余额,这两个操作必须要么都成功,要么都失败。通过使用 START TRANSACTION、COMMIT 和 ROLLBACK 语句来实现事务的开始、提交和回滚。例如: sql START TRANSACTION; UPDATE accounts SET balance = balance - 100 WHERE account_id = 1; UPDATE accounts SET balance = balance + 100 WHERE account_id = 2; COMMIT; 数据库的备份与恢复:定期进行数据库备份是保障数据安全的重要措施。可以使用 mysqldump 命令行工具或数据库管理工具(如 phpMyAdmin)进行数据库备份。备份文件要存储在安全可靠的位置,并且定期进行恢复测试,确保在需要时能够成功恢复数据。例如,每天凌晨使用 mysqldump 命令对数据库进行全量备份,并将备份文件存储到外部存储设备中。在遇到数据库故障时,可以使用备份文件进行数据恢复操作。 以上技术经验是在实际开发过程中总结出来的,希望对你在使用这些技术进行项目开发时有所帮助。当然,每个项目都有其独特的需求和挑战,需要根据具体情况灵活运用这些经验,并不断学习和探索新的技术和方法。 Spring 全家桶的技术经验: Spring Framework IoC(控制反转)与 DI(依赖注入) 深入理解原理:IoC 是 Spring 的核心思想之一,它将对象的创建和依赖关系的管理从代码中转移到配置文件或注解中。通过 ApplicationContext 容器来管理对象的生命周期。例如,使用 @Component、@Service、@Repository 等注解将类标记为 Spring 组件,让 Spring 容器自动创建和管理这些对象。 合理使用依赖注入方式:Spring 支持构造器注入、Setter 注入和字段注入。构造器注入更适合强制依赖,因为它能确保对象在创建时就拥有所需的依赖;Setter 注入适合可选依赖;而字段注入虽然简洁,但不利于单元测试,应谨慎使用。 java @Service public class UserService { private final UserRepository userRepository; // 构造器注入 public UserService(UserRepository userRepository) { this.userRepository = userRepository; } } AOP(面向切面编程) 明确使用场景:AOP 适用于处理横切关注点,如日志记录、事务管理、权限验证等。通过定义切面(@Aspect)、切点(@Pointcut)和通知(@Before、@After、@Around 等),可以将这些通用逻辑从业务逻辑中分离出来,提高代码的可维护性和复用性。 性能考虑:虽然 AOP 很强大,但过度使用会带来一定的性能开销。在使用时,要确保切点的定义准确,避免不必要的增强。例如,在一个大型项目中,为了记录方法的执行时间,可以使用 @Around 通知来实现,但只对关键业务方法进行增强。 java @Aspect @Component public class LoggingAspect { @Around("execution(* com.example.service.*.*(..))") public Object logExecutionTime(ProceedingJoinPoint joinPoint) throws Throwable { long startTime = System.currentTimeMillis(); Object result = joinPoint.proceed(); long endTime = System.currentTimeMillis(); System.out.println(joinPoint.getSignature() + " executed in " + (endTime - startTime) + " ms"); return result; } } 事务管理 声明式事务:Spring 提供了声明式事务管理,通过 @Transactional 注解可以方便地实现事务控制。要注意事务的传播行为(如 Propagation.REQUIRED、Propagation.REQUIRES_NEW 等)和隔离级别(如 Isolation.READ_COMMITTED 等)的配置,以满足不同的业务需求。 异常处理与回滚规则:默认情况下,@Transactional 注解会在遇到 RuntimeException 及其子类时回滚事务。如果需要对其他异常进行回滚,可以通过 rollbackFor 属性进行配置。 java @Service public class OrderService { @Autowired private OrderRepository orderRepository; @Transactional(rollbackFor = Exception.class) public void createOrder(Order order) { orderRepository.save(order); // 其他业务逻辑 } } Spring Boot 快速搭建项目 使用 Spring Initializr:Spring Initializr 是一个在线工具,能帮助快速生成 Spring Boot 项目的骨架。可以根据项目需求选择不同的依赖,如 Web、数据库、缓存等,减少手动配置的工作量。 自动配置原理:Spring Boot 的自动配置机制是其一大特色。它会根据项目中引入的依赖自动配置应用程序。但在某些情况下,可能需要自定义配置来覆盖默认配置。可以通过创建配置类并使用 @Configuration 注解来实现。 配置管理 外部化配置:Spring Boot 支持多种外部化配置方式,如 application.properties、application.yml 等。可以根据不同的环境(开发、测试、生产)使用不同的配置文件,通过 spring.profiles.active 属性来指定当前使用的配置文件。 配置属性绑定:使用 @ConfigurationProperties 注解可以将配置文件中的属性绑定到 Java 对象上,方便在代码中使用。 java @ConfigurationProperties(prefix = "app") @Component public class AppConfig { private String name; private int version; // getter 和 setter 方法 } 监控与管理 Spring Boot Actuator:Spring Boot Actuator 提供了丰富的监控和管理端点,如 /health、/info、/metrics 等。可以通过这些端点了解应用程序的运行状态、性能指标等信息。同时,可以对 Actuator 进行自定义配置,以满足特定的监控需求。 日志管理:合理配置日志级别和日志输出格式,有助于快速定位问题。Spring Boot 默认使用 Logback 作为日志框架,可以通过配置文件对日志进行详细的配置。 Spring Data 简化数据访问 使用 Spring Data Repositories:Spring Data 提供了 CrudRepository、PagingAndSortingRepository 等接口,通过继承这些接口可以轻松实现基本的 CRUD 操作和分页查询。同时,还可以通过方法命名规则或 @Query 注解自定义查询方法。 java public interface UserRepository extends CrudRepository { List findByLastName(String lastName); @Query("SELECT u FROM User u WHERE u.age > :age") List findByAgeGreaterThan(@Param("age") int age); } 多数据源支持 配置多个数据源:在一些复杂的项目中,可能需要同时连接多个数据库。可以通过配置多个 DataSource 和 EntityManagerFactory 来实现多数据源的支持。 事务管理:在多数据源环境下,要注意事务的管理。可以使用 JtaTransactionManager 来实现分布式事务控制。 Spring Cloud 服务发现与注册 使用 Eureka 或 Consul:Spring Cloud Eureka 和 Consul 都可以实现服务的注册与发现。服务提供者将自己的信息注册到注册中心,服务消费者从注册中心获取服务提供者的信息。要注意注册中心的高可用性配置,避免单点故障。 服务健康检查:注册中心会定期检查服务的健康状态,服务提供者需要实现健康检查接口,确保注册中心能及时发现服务的异常情况。 分布式配置管理 Spring Cloud Config:Spring Cloud Config 可以将配置信息集中管理,支持从本地文件系统、Git 仓库等多种数据源加载配置。通过配置客户端可以动态刷新配置,无需重启应用程序。 配置安全:在使用 Spring Cloud Config 时,要注意配置信息的安全性,如对敏感信息进行加密处理。 服务调用与负载均衡 使用 Feign 和 Ribbon:Feign 是一个声明式的 HTTP 客户端,结合 Ribbon 可以实现服务之间的调用和负载均衡。通过定义接口和注解,可以方便地调用其他服务的接口。 断路器模式:使用 Hystrix 或 Resilience4j 实现断路器模式,当服务调用出现故障时,能够快速返回默认值,避免级联故障。 java @FeignClient(name = "user-service", fallback = UserServiceFallback.class) public interface UserServiceClient { @GetMapping("/users/{id}") User getUserById(@PathVariable("id") Long id); } Spring Security 认证与授权 基于表单的认证:Spring Security 可以很方便地实现基于表单的用户认证。通过配置 WebSecurityConfigurerAdapter 类,可以定义认证的方式、登录页面、登录成功和失败的处理逻辑等。 基于角色的授权:使用 @PreAuthorize、@PostAuthorize 等注解可以实现基于角色的访问控制。在方法或类上添加注解,指定访问该方法或类所需的角色。 java @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .antMatchers("/public/**").permitAll() .anyRequest().authenticated() .and() .formLogin() .loginPage("/login") .permitAll() .and() .logout() .permitAll(); } } 密码加密 使用 PasswordEncoder:Spring Security 提供了多种密码加密方式,如 BCryptPasswordEncoder、Pbkdf2PasswordEncoder 等。在用户注册和登录时,要使用密码编码器对密码进行加密和解密操作。 java @Service public class UserService { @Autowired private PasswordEncoder passwordEncoder; public void registerUser(User user) { user.setPassword(passwordEncoder.encode(user.getPassword())); // 保存用户信息 } } OAuth2 集成 实现 OAuth2 认证:Spring Security 支持 OAuth2 认证协议,可以作为 OAuth2 客户端或授权服务器。通过配置相关的类和属性,可以实现第三方登录、资源保护等功能。 以上是关于 Spring 全家桶的一些技术经验,希望能帮助你更好地使用 Spring 相关技术进行项目开发。
可兼职地点 天津 西青区
1熟练Spring(SpringBoot),SpringMVC,MyBatis等主流开源框架的使用 2.熟练MySQL数据库使用,SQL调优 3.熟练 使用QueryWapper ,MyBatis-plus等系列插件,敏捷开发 4.熟练使用coding,gite 等开发\版本控制工具 5.了解 Element-ui ,VUE 的使用,能快速搭建简单前端基础框架 6.熟悉 Elasticsearch(ES)全文搜索引擎的使用 7.了解 Redis的分片、Redis哨兵、Redis集群等机制,能通过Spring容器管理redis对象,对缓存数据库进行操作 8. 有Linux系统部署经验, 现场部署经验
◆ 熟练掌握Java编程,常用的设计模式,具有良好的编程习惯 ◆ 熟练掌握MVC和MVP开发模式,简洁代码,实现强解耦性; ◆ 熟练掌握Android性能优化,内存优化,启动优化,UI优化; ◆ 熟练掌握当下流行网络请求技术OkHttp、Volley 、 xUtils等; ◆ 熟练掌握主流图片加载框架Imageloder,Glide,Picsso,Fresco解决图片内存溢出异常; ◆ 熟练安卓中补间动画,帧动画,及属性动画 ◆ 熟练掌握Android通信机制,handler线程间的通信、Activity间的跳转,使用广播传值; ◆ 熟练TCP/UDP及HTTP/HTTPS协议,超文本传输协议,https安全性传输防止在传输过程中数据被篡改、窃听、劫持; ◆ 熟练掌握Android性能优化 内存泄漏、ANR、OOM分析及解决 ◆ 熟练掌握Android机型适配 ◆ 熟练掌握Git和SVN版本控制工具 使用git+sourceTree+码云管理代码; ◆ 了解使用百度地图、极光推送、IM即时通信等第三方SDK的使用; ◆ 了解图片三级缓存LruCache
毕业于燕山大学软件工程专业,毕业后就职于航天科工下属单位,现负责研发部门前端开发。 主要开发军工、政府机关、教育行业相关项目。 AngularJs和vue为现在主要应用框架,可独立完成前端部分或其中模块,js基础扎实,代码习惯良好。 web端项目参与居多,也有公众号之类的移动端项目或C#套壳页面等
可兼职地点 天津 市区
以下经验均基于致远OA协同办公软件展开 1、能够基本了解各个行业的简单业务管理流程,并通过技术调研沟通梳理需求出具解决方案。 2、能够基于致远OA制作搭建业务管理应用。 3、对致远CIP应用接入功能的使用配置有一定基础,可解决第三方系统与致远OA的简单集成问题。
可兼职时间 周日、工作日
我是技术人才我在寻找远程工作
我是创业者我在寻找技术人才