profile
๐Ÿš€ ๊ธฐ๋ก๋ณด๋‹จ ๊ธธ๋ก์„ โญ
ํƒœ๊ทธ ๋ชฉ๋ก
์ „์ฒด๋ณด๊ธฐ (458)ํ• ์ผ(141)Java(34)Spring(22)python(21)gil.log(15)mysql(13)๊ฐœ๋…(10)์ž๋ฐ” ์„ฑ๋Šฅ ํŠœ๋‹ ์ด์•ผ๊ธฐ(9)JPA(8)์—๋Ÿฌ(8)linux(8)Springboot(8)์ž๋ฃŒ๊ตฌ์กฐ(7)eclipse(7)Swagger(6)db(6)jquery(6)vscode(6)sql(6)migration(6)์•Œ๊ณ ๋ฆฌ์ฆ˜(6)MacOS(6)php(5)Modern Java In Action(5)exception(4)JavaScript(4)@RequestParam(4)List(4)ide(4)lambda(4)error(4)API(3)stream(3)set(3)class(3)cors(3)DDaJa(3)dictionary(2)MVC(2)preflight(2)aws(2)http(2)Builder(2)protocol(2)maven(2)Hibernate(2)parameter(2)์ •๊ทœ ํ‘œํ˜„์‹(2)MyBatis(2)@ExceptionHandler(2)ํƒ์ƒ‰(2)String(2)Index(2)transaction(2)Text Mining(2)LomBok(2)regular expression(2)git(2)Design Pattern(2)exception handling(2)case(2)EL(2)stack(2)RequestHeader(2)Interceptor(2)RequestBody(2)collections(2)์ž๋ฃŒํ˜•(2)queue(2)mac(2)abstract class(2)Cheat Sheet(2)di(2)interface(2)ํ•ด๊ฒฐ(2)Map(2)vue.js(2)@PathVariable(2)param(2)coding test(2)macbook(2)REST API(2)jsp(2)REST(2)ํŠœ๋‹(2)Spring boot(2)๋””์ž์ธ ํŒจํ„ด(2)404(2)COLUMN(2)jQuery Migrate(2)Java 8(2)restful api(2)๊ณ„ํš(1)๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ(1)terminal(1)functional programming(1)HashTable(1)์˜ˆ์™ธ์ฒ˜๋ฆฌ(1)StringBuilder(1)modjk(1)DispatcherServlet(1)data type(1)modelattribute(1)iteration(1)rpm(1)HashMap(1)์ƒํƒœ์ฝ”๋“œ(1)stomp(1)TreeMap(1)csrf(1)batch(1)HashSet(1)๋ณ€์ˆ˜๋ช…(1)PriorityQueue(1)CORS policy(1)๋งˆ์ด๊ทธ๋ ˆ์ด์…˜(1)๋ฒ„๋ธ” ์ •๋ ฌ(1)์„ ํƒ ์ •๋ ฌ(1)INSERT(1)Working set(1)๋น„๊ต์—ฐ์‚ฐ์ž(1)Mac Os(1)VO(1)optional(1)const(1)let(1)var(1)excel(1)tomcat(1)์ •๋ ฌ(1)์‹œ๊ฐ„๋ณต์žก๋„(1)ArrayList(1)annotation(1)anaconda(1)Table(1)hibernate.hbm2ddl.auto(1)formData(1)์ž๋ฃŒ ๊ตฌ์กฐ(1)resolver(1)file(1)์‹ ์ž…๊ฐœ๋ฐœ์ž(1)ํŒจํ„ด(1)Builder Pattern(1)AutoConfiguration(1)methods(1)bean(1)ํ•ด์ƒ๋„(1)header(1)yaml(1)์ œ์–ด๋ฌธ(1)์›์‹œํƒ€์ž…(1)์ฐธ์กฐํƒ€์ž…(1)aop(1)coding convention(1)junit(1)svn(1)environment(1)jar(1)DTO(1)PORT(1)require(1)Big O(1)StringBuffer(1)๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(1)options(1)RuntimeException(1)BigInteger(1)ObjectMapper(1)container(1)replace(1)๋‚™์„œ์žฅ(1)View(1)testcode(1)@Valid(1)dependency(1)include(1)wrapper(1)group by(1)durability(1)Isolation(1)controlleradvice(1)Junit 5(1)distinct(1)annotations(1)phantom read(1)dirty read(1)isolation level(1)ALTER TABLE(1)๋“€์–ผ ๋ชจ๋‹ˆํ„ฐ(1)commands(1)Camera(1)access token(1)first class(1)Primenumber(1)TreeSet(1)transient(1)ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜(1)๋ช…๋ นํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ(1)ํ™˜๊ฒฝ(1)์‚ฐ์ถœ๋ฌผ(1)pageContext(1)COALESCE(1)consistency(1)ANSI SQL(1)EXPLAIN PLAN(1)Data Dictionary(1)Math.class(1)LinkedHashSet(1)LinkedHashMap(1)PrimitiveType(1)ReferenceType(1)์„œ์‹(1)๊ด€์  ์ง€ํ–ฅ(1)์šฐ์„  ์ˆœ์œ„ ํ(1)Tibero(1)Command Object(1)HttpServletRequest(1)๋™์  ์ฟผ๋ฆฌ(1).find()(1)๋‚ด์žฅ ํ•จ์ˆ˜(1)DATE_FORMAT(1)NonClustered Index(1)Clustered Index(1)SQL Partition(1)์„ ํƒ๋ฌธ(1)webcam(1)TestCase(1)spring-boot-starter(1)DB Export(1)DB Import(1)ํ‘œ์ค€ Library(1)ddl auto(1)throwable(1)๊ต์ฐจ ์ถœ์ฒ˜ ๋ฆฌ์†Œ์Šค ๊ณต์œ (1)defaultdict(1)MyISAM(1)InnoDB(1)HandlerInterCeptor(1)์ผ๊ธ‰ ์‹œ๋ฏผ(1)moshi(1)MessageConverter(1)@lob(1)api server(1)enumerated(1)currentTimeMillis(1)@MappedSuperclass(1)๋ฌธ์žํ˜•(1)string class(1)CentOS 6.9(1)mirrorlist(1)ius(1)CentOS6.9(1)Logrotate(1)ํด๋ฆญ ์—ฐ๊ฒฐ(1)์ ์ธต์  ์ƒ์„ฑ์ž ํŒจํ„ด(1)JavaBeans Pattern(1)MVC ๋ชจ๋ธ(1)๋‹จ์ถ•ํ‚ค ์ •๋ฆฌ(1)Transfer Object Pattern(1)Service Locator(1)ํ”„๋กœํŒŒ์ผ๋ง ํˆด(1)Profiling Tool(1)์„ฑ๋Šฅ ์ธก์ •(1)Profilling Tool(1)์ž๋ฐ” ์„ฑ๋Šฅ ๊ฐœ์„  ์ด์•ผ๊ธฐ(1)์‘๋‹ต ์‹œ๊ฐ„ ํ”„๋กœํŒŒ์ผ๋ง(1)๋ฉ”๋ชจ๋ฆฌ ํ”„๋กœํŒŒ์ผ๋ง(1)Memory Profiling(1)ResponseTime Profiling(1)System Class(1)System Class Property Methods(1)VLOOKUP(1)nanoTime(1)emit(1)JMH(1)TransferObject(1)Implicit Objects(1)applicationScope(1)pageScope(1)initParam(1)sessionScope(1)requestScope(1)paramValues(1)MultiValueMap(1)@SessionAttributes(1)headerValues(1)Atomicity(1)Nonrepeatable Read(1)UncheckedException(1)CheckedException(1)์ด๊ธ‰ ์‹œ๋ฏผ(1)์ „์ฒด ๊ฒ€์ƒ‰(1)ModernJavaInAction(1)๋™์ž‘ ํŒŒ๋ผ๋ฏธํ„ฐํ™”(1)Behavior Parameterization(1)swagger2(1)-Dspring.profiles.active(1)Spring Fox(1)Java Builder(1)OAS_30(1)@ApiResponse(1)SWAGER_2(1)Kill(1)์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ(1)web-app-filter-name-uniqueness(1)lsof(1)jjwt(1)์™ธ๋ถ€ ๋ชจ๋‹ˆํ„ฐ(1)M1 MacBook(1)alter table column(1)IDENTITY(1)@Temporal(1)์—ฐ๊ด€ ๊ด€๊ณ„ ์ฃผ์ธ(1)์–‘๋ฐฉํ–ฅ ๋งคํ•‘(1)๋‹ค๋Œ€์ผ ๊ด€๊ณ„(1)๊ณตํ†ต Entity(1)Column Field Mapping(1)์—ฐ๊ด€๊ด€๊ณ„ ํŽธ์˜ ๋ฉ”์†Œ๋“œ(1)RequestHeaderMapMethodArgumentResolver(1)HandlerMethodArgumentResolver(1)HandlerInterceptorAdapter(1)NoHandlerFoundException(1)Class.isAssignableFrom(1)MethodArgumentResolver(1)Handler Parameter(1)PathVariableMethodArgumentResolver(1)RequestParamMethodArgumentResolver(1)WebMvcConfigurer(1)AJP(1)Please use a personal access token instead(1)HandlerExceptionResolver(1)customize property(1)application.properties(1)@ConfigurationProperties(1)this.$ref(1)this.$parent(1)๋ฏธ๋ฆฌ์บ”๋ฒ„์Šค(1)Rfc3339DateJsonAdapter(1)์˜ˆ์™ธ ์ „ํ™˜(1)์˜ˆ์™ธ ํšŒํ”ผ(1)์˜ˆ์™ธ ๋ณต๊ตฌ(1)resolveException(1)OAS(1)regexp(1)1๋…„(1)algorithm(1)plan(1)Collection(1)access(1)slicing(1)ifnull(1)ps(1)instanceof(1)comparable(1)Rollback(1)formatting(1)ACID(1)comparator(1)@property(1)SIDEPROJECT(1)์ ‘๊ทผ ์ œํ•œ์ž(1)sequence(1)์†Œ์ˆ˜ ์ฐพ๊ธฐ(1)R(1)velog(1)tcp(1)Markdown(1)๋งˆํฌ๋‹ค์šด(1)์ž๋ฐ”(1)์กฐํ•ฉ(1)cookie(1)math(1)array(1)github(1)JWT(1)web(1)๋ฉด์ ‘(1)Module(1)OOP(1)Python3(1)iBatis(1)pattern(1)async(1)๋น„๋™๊ธฐ(1)Constraint(1)entity(1)runtime(1)framework(1)library(1)์Šคํ„ฐ๋””(1)Side Project(1)ssh(1)programmers(1)DP(1)์†Œ์ˆ˜(1)url(1)Database(1)BFS(1)spring security(1)IntelliJ(1)ํ† ์ดํ”„๋กœ์ ํŠธ(1)๋‹จ์ถ•ํ‚ค(1)cmd(1)hint(1)pycharm(1)ํ”„๋กœํŒŒ์ผ๋ง(1)๊ฒ€์ฆ(1)Generic(1)DFS(1)์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜(1)validator(1)jdk(1)linked list(1)component(1)POST(1)domain(1)Props(1)ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ(1)IoC(1)status code(1)IO(1)profile(1)json(1)counter(1)select(1)SYSTEM(1)๋ฌธ๋ฒ•(1)tuple(1)function(1)package(1)command(1)๋ฐ˜๋ณต๋ฌธ(1)์ˆœ์—ด(1)reference(1)recursion(1)servlet(1)
post-thumbnail

[Spring] DispatcherServlet์˜ ์˜ˆ์™ธ์ฒ˜๋ฆฌ ์ „๋žต(HandlerExceptionResolver)

ํ˜„์žฌ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋‹จ์—์„œ JWT๋ฅผ ํ™œ์šฉํ•œ ์ธ์ฆ์ด ํ•„์š”ํ•œ Handler๋ฅผ ๊ณตํ†ต์ ์œผ๋กœ ์ธ์ฆ ๊ณผ์ •์„ ์ˆ˜ํ–‰ํ•˜๋Š” HandlerInterceptorAdapter๋ฅผ ์ƒ์†๋ฐ›๋Š” JwtInterceptor๋ฅผ ์œ„์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ์œ„ ์ธ์ฆ ๊ณผ์ • ์ค‘ ์ธ์ฆ ์‹คํŒจ์‹œ ์•„๋ž˜ ์ฒ˜

2021๋…„ 9์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] @Async Annotation(๋น„๋™๊ธฐ ๋ฉ”์†Œ๋“œ ์‚ฌ์šฉํ•˜๊ธฐ)

java.util.concurrent.ExecutorService์„ ํ™œ์šฉํ•ด์„œ ๋น„๋™๊ธฐ ๋ฐฉ์‹์˜ method๋ฅผ ์ •์˜ ํ•  ๋•Œ๋งˆ๋‹ค, ์œ„์™€ ๊ฐ™์ด Runnable์˜ run()์„ ์žฌ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋Š” ๋“ฑ ๋™์ผํ•œ ์ž‘์—…๋“ค์˜ ๋ฐ˜๋ณต์ด ์žฆ์•˜๋‹ค. With @Async @Async Annotati

2021๋…„ 8์›” 27์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Spring] HandlerMethodArgumentResolver๋ฅผ ๊ตฌํ˜„ํ•œ ์„ธ ๊ฐ€์ง€ Argument Resolver ํ™•์ธํ•ด๋ณด๊ธฐ(@PathVariable, @RequestParam, @RequestHeader)

Spring์—์„œ ๊ตฌํ˜„๋œ HandlerMethodArgumentResolver ์ง€๊ธˆ๊นŒ์ง€ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ๋˜ @PathVariable, @RequestParam, @RequestHeader Annotation ๋“ค๋„, HandlerMethodArgumentResolver๋ฅผ S

2021๋…„ 7์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] Resolver ๋ž€? Resolver ๊ตฌํ˜„ํ•˜๊ธฐ(HandlerMethodArgumentResolver)

Custom HandlerMethodArgumentResolver ๋งŒ๋“ค์–ด๋ณด๊ธฐ\[Advenoh - FRANK OH]HandlerMethodArgumentResolver๋Š” Interface๋กœ์จ,Controller์˜ Argument(Parameter)์— ์ง€์ •๋œ ๋ณ€์ˆ˜๋“ค์„,An

2021๋…„ 7์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] CORS preFlight(OPTIONS Method) Interceptor ๊ฒ€์ฆ ๋กœ์ง ์ œ์™ธํ•ด์ฃผ๊ธฐ(Access to XMLHttpRequest at '' from origin '' has been blocked by CORS policy)

์ด ๊ธ€์„ ๋‚จ๊ธฐ๋Š” ์ด์œ ๋Š”,JWT ๊ฒ€์ฆ์„ ์ˆ˜ํ–‰ํ•˜๋Š” Interceptor์— ์˜ํ•ด์„œ ๋‹ค๋ฅธ ์ถœ์ฒ˜(๋‹ค๋ฅธ ์„œ๋ฒ„)์—์„œ์˜ XHR Request์˜ OPTIONS๋กœ Request ํ—ˆ์šฉ ์—ฌ๋ถ€๋ฅผ ๋จผ์ € ํ™•์ธํ•˜๋Š” preFilght Request๊ฐ€ ์ถฉ๋Œํ•˜๋Š” ์ƒํ™ฉ์„ ๊ธธ๋กํ•˜๊ธฐ ์œ„ํ•ด์„œ๋‹ค.๋‚˜์˜ ์ƒํ™ฉ์€ ์•„

2021๋…„ 7์›” 22์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] 404 Error Customํ•˜๊ธฐ (@ExceptionHandler์‚ฌ์šฉ, NoHandlerFoundException Throw ์•ˆ๋ ๋•Œ)

404 Error์„ Handlingํ•˜๊ธฐ ์œ„ํ•ด NoHandlerFoundException์„ @ExceptionHandler๋กœ Handling ํ•ด๋ณด๋ ค ํ–ˆ์ง€๋งŒ ์ ์šฉ๋˜์ง€ ์•Š์•˜๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„  DispatcherServlet์ด HandlerMapping์—๊ฒŒ Requ

2021๋…„ 7์›” 21์ผ
ยท
2๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] Interceptor๋ž€? ๊ตฌํ˜„ ์˜ˆ์ œ์™€ ํ•จ๊ป˜ (HandlerInterceptor, HandlerInterceptorAdapter)

Interceptor Interceptor๋Š” ๋‚š์•„์ฑ„๋‹ค์˜ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ ์žˆ๋‹ค. Client์—์„œ Server๋กœ ๋“ค์–ด์˜จ Request ๊ฐ์ฒด๋ฅผ, Controller์˜ Handler๋กœ ๋„๋‹ฌํ•˜๊ธฐ ์ „ ๊ฐ€๋กœ์ฑ„์–ด, ์›ํ•˜๋Š” ์ถ”๊ฐ€ ์ž‘์—…์ด๋‚˜ ๋กœ์ง์„ ์ˆ˜ํ–‰ ํ•œ ํ›„ Handler๋กœ ๋ณด๋‚ผ ์ˆ˜

2021๋…„ 7์›” 21์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] Response Object JSON Null ๊ฐ’ ์•ˆ๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•(message-converters)

SPRING RESPONSE OBJECT ๊ฐ’ ์ค‘์—์„œ NULL ์ธ ๊ฐ’์€ ์•ˆ๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•\[YENA WORLD]JSON์œผ๋กœ ResponseBody๋ฅผ ํ†ตํ•ด JSON์œผ๋กœ ์‘๋‹ต์„ ๋ณด๋‚ผ๋•Œ,๊ธฐ๋ณธ์ ์œผ๋กœ NULL ๊ฐ’์ธ ์š”์†Œ๋“ค๋„ ํ•จ๊ป˜ ์ „์†ก๋œ๋‹ค.NULL์ด ์•„๋‹Œ ์š”์†Œ๋“ค๋งŒ Response๋กœ ์ „

2021๋…„ 7์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] profile๋กœ ์„œ๋ฒ„ ํ™˜๊ฒฝ์— ๋งž๋Š” Context ์ ์šฉํ•˜๊ธฐ(-Dspring.profiles.active)

๋ณต์ˆ˜ ์ด์ƒ์˜ WAS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ƒํ™ฉ์—์„œ ๊ฐ™์€ Spring Application์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๊ฐ Sever์— ๋งž๊ฒŒ ์˜ Context๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์ž๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ์ƒํ™ฉ์ด๋‹ค.

2021๋…„ 7์›” 7์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Error] Swagger 2.9.2 /swagger-ui.html ์—ด๋ฆฌ์ง€ ์•Š์„๋•Œ ํ•ด๊ฒฐ

pom.xml์— Spring Swagger 2.9.2 ๊ด€๋ จ Dependency๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ ,SwaggerConfig ๊ด€๋ จ Class๋ฅผ ์ƒ์„ฑํ•˜์—ฌ Server ์‹คํ–‰ ์‹œ ์ •์ƒ ๋™์ž‘ํ•˜์ง€๋งŒ,localhost/swagger-ui.html ๋กœ Swagger ๋ฌธ์„œ ์ ‘์†์ด ์•ˆ๋˜๋Š” ์ƒํ™ฉ์ด

2021๋…„ 7์›” 7์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

Spring vs Spring Boot

Spring Spring์€ Java ์ง„์˜์—์„œ ๊ฐ€์žฅ ๋Œ€์ค‘์ ์ธ ๋™์  ์›น ๊ฐœ๋ฐœ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. Spring์€ ์•„๋ž˜ ์„ธ ๊ฐ€์ง€ ์˜์กด์„ฑ ์ฃผ์ž…(DI, Dependency Injection), ์ œ์–ด์˜ ์—ญ์ „(IOC, Inversion Of Control), ๊ด€์  ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(AO

2021๋…„ 7์›” 6์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] Eclipse Maven Project ์™ธ๋ถ€ .jar ์˜์กด์„ฑ ์‚ฝ์ž… ๋ฐฉ๋ฒ•(pom.xml ์ด์šฉ X)

ํšŒ์‚ฌ ํ”„๋กœ์ ํŠธ์—์„œ ์™ธ๋ถ€ ์ธ์ฆ jar ํŒŒ์ผ์„ ๋ฐ›์•„ ์ ์šฉํ•ด์•ผํ•˜๋Š” ์ƒํ™ฉ์—์„œ ๋‹ค์Œ์„ ์œ„ํ•ด ๊ธธ๋กํ•ด๋‘”๋‹ค.์ƒˆ๋กœ ์ถ”๊ฐ€ํ•œ .jar๋ฅผ ํ™•์ธํ•˜๊ณ  Apply And Close ํ•ด์ค€๋‹ค.gil.end()

2021๋…„ 6์›” 25์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[TransferObject] Collection, Map Interface

๋Œ€๋ถ€๋ถ„ ํ”„๋กœ์ ํŠธ์—์„œ Transfer Object๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ณ , ๊ทธ ๋‚ด๋ถ€์—์„œ Collection๊ณผ Map Interface๋ฅผ ์ƒ์†๋ฐ›๋Š” ๊ฐ์ฒด๊ฐ€ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค. ๋ชฉ๋ก ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๊ธฐ์— ๊ฐ€์žฅ ์ข‹์€๊ฒƒ์ด Array์ด๊ณ , ๊ทธ ๋‹ค์Œ์œผ๋กœ Collection ๊ด€๋ จ ๊ฐ์ฒด๋“ค์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค

2021๋…„ 5์›” 14์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Spring] Parameter Mapping(MultiValueMap, @RequestParam, @RequestBody, @ModelAttribute, @SessionAttributes)

Spring์—์„œ Controller์— ์›ํ•˜๋Š” Parameter๋‚˜ Data๋ฅผ Binding ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋‹ค. ํ‰์†Œ ๊ฐœ๋ฐœํ• ๋•Œ ์‚ฌ์šฉํ•˜๋˜ ์ฝ”๋“œ์—์„œ ์•„๋ฌด ์ƒ๊ฐ์—†์ด Binding์„ ํ•˜๋‹ค๋ณด๋‹ˆ ์•„๋ž˜ ํ•ด๋‹น Binding ๋ฐฉ๋ฒ•๋“ค์— ๋Œ€ํ•œ ์ดํ•ด๋„๊ฐ€ ๋ถ€์กฑํ•˜์—ฌ @Request

2021๋…„ 5์›” 10์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Spring] Command Object

Command Object๋ž€ HttpServletRequest๋ฅผ ํ†ตํ•ด ๋“ค์–ด์˜จ RequestParameter๋“ค์„ setter method๋ฅผ ์ด์šฉํ•˜์—ฌ Object์— ์ •์˜๋˜์–ด์žˆ๋Š” ์†์„ฑ์— Binding์ด ๋˜๋Š” Object๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

2020๋…„ 11์›” 12์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Spring] DI(Dependency Injection) ์„ธ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•

์•ž์„œ DI(Dependency Injection)์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋Š”๋ฐ, Spring์—์„œ ์˜์กด์„ฑ์„ ์ฃผ์ž…ํ•˜๋Š” ์„ธ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ๋‹ค๋ฃจ์–ด ๋ณด๋ ค๊ณ ํ•œ๋‹ค.DI๋Š” Spring์—์„œ๋งŒ ์‚ฌ์šฉ๋˜๋Š” ์šฉ์–ด๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ๋Š” ์–ด๋””์—์„œ๋‚˜ ํ†ต์šฉ๋˜๋Š” ๊ฐœ๋…์ด๋‹ค.๊ฐ์ฒด ๋‚ด๋ถ€์—์„œ ๋‹ค๋ฅธ

2020๋…„ 11์›” 8์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] Annotation ์ •๋ฆฌ

Annotation(@)์€ ์‚ฌ์ „์  ์˜๋ฏธ๋กœ๋Š” ์ฃผ์„์ด๋ผ๋Š” ๋œป์ด๋‹ค. ์ž๋ฐ”์—์„œ ์‚ฌ์šฉ๋  ๋•Œ์˜ Annotation์€ ์ฝ”๋“œ ์‚ฌ์ด์— ์ฃผ์„์ฒ˜๋Ÿผ ์“ฐ์—ฌ์„œ ํŠน๋ณ„ํ•œ ์˜๋ฏธ, ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ•˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค.

2020๋…„ 11์›” 5์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] AOP(๊ด€์  ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ)

AOP๋Š” ์Šคํ”„๋ง์˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์„ธ ๊ฐ€์ง€ ํŠน์ง•์ธ IoC(์ œ์–ด์˜ ์—ญ์ „), DI(์˜์กด์„ฑ ์‚ฝ์ž…), AOP(๊ด€์  ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ)์ค‘ ํ•˜๋‚˜์ด๋‹ค.AOP๋Š” OOP๋ฅผ ๋Œ€์‹ ํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ฐœ๋…์ด ์•„๋‹ˆ๋ผ, ๊ธฐ์กด OOP๋ฅผ ๋”์šฑ ๋ณด์™„, ํ™•์žฅํ•˜์—ฌ OOP๋ฅผ OOP๋‹ต๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๊ฐœ๋…

2020๋…„ 11์›” 1์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Spring] DI, IoC ์ •๋ฆฌ

DI(Dependency Injection)๋ž€ ์Šคํ”„๋ง์ด ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ์™€ ์ฐจ๋ณ„ํ™”๋˜์–ด ์ œ๊ณตํ•˜๋Š” ์˜์กด ๊ด€๊ณ„ ์ฃผ์ž… ๊ธฐ๋Šฅ์œผ๋กœ,๊ฐ์ฒด๋ฅผ ์ง์ ‘ ์ƒ์„ฑํ•˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ์™ธ๋ถ€์—์„œ ์ƒ์„ฑํ•œ ํ›„ ์ฃผ์ž… ์‹œ์ผœ์ฃผ๋Š” ๋ฐฉ์‹์ด๋‹ค.DI(์˜์กด์„ฑ ์ฃผ์ž…)๋ฅผ ํ†ตํ•ด์„œ ๋ชจ๋“ˆ ๊ฐ„์˜ ๊ฒฐํ•ฉ๋„๊ฐ€ ๋‚ฎ์•„์ง€๊ณ  ์œ ์—ฐ์„ฑ์ด ๋†’์•„์ง„๋‹ค.

2020๋…„ 10์›” 31์ผ
ยท
2๊ฐœ์˜ ๋Œ“๊ธ€

Spring MVC ๊ตฌ์กฐ

์Šคํ”„๋ง MVC๋Š” Model2 ๋ฐฉ์‹์„ ๋”ฐ๋ฅด๋ฉฐ ์ด Model2์˜ ์•„ํ‚คํ…์ฒ˜์— ๋งž๊ฒŒ ์„ค๊ณ„๋˜์–ด ์žˆ๋‹ค. ์Šคํ”„๋ง์—์„œ๋Š” ์œ ์ €์˜ ์š”์ฒญ์„ ๋ฐ›๋Š” DispathcerServlet์ด ํ•ต์‹ฌ์ด๋‹ค.

2020๋…„ 10์›” 21์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€