일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Cookie
- 배포
- jQuery
- websocket
- node.js
- docker
- 비트코인
- JSP
- 알고리즘
- model1
- SQL
- PL/SQL
- EC2
- 암호화
- tiles.xml
- HTML
- RDS
- phaser
- Spring
- autowired
- JavaScript
- Servlet
- 도커
- Ajax
- 블록체인
- express
- CSS
- AWS
- 웹소켓
- 웹게임
- Today
- Total
목록Web (131)
記錄
색깔 설정 방법 h1{ color: #f442d7; } h2{ color: rgb(0, 255, 0); } h3{ color: rgba(0, 255, 0, .5); } ul { color: blue; } 배경 설정 방법(색깔, 사진), border h1 { color: #f442d7; border: red; border-width: 5px; border-style: solid; /*아래와 같이 합쳐서 써도 괜찮다*/ /*border: 5px red solid;*/ } /* background에 색상을 설정하고 싶은 경우 */ body { background: black; } /* background에 사진을 설정하고 싶은 경우 */ body { background: url(https://images6.a..
일반적인 규칙 selector { property: value; property: value;} 외부 CSS연결 예제 Practice.htmlPractice CSS Hello world Practice apple orange banana Practice_css.cssh1{ color: red; } h2{ color: orange; } ul { color: blue; } 디자인(CSS위주) 참고 사이트 : http://www.csszengarden.com/
org.springframework.web.contextInterface WebApplicationContext public interface WebApplicationContextextends ApplicationContext Interface to provide configuration for a web application. This is read-only while the application is running, but may be reloaded if the implementation supports this.This interface adds a getServletContext() method to the generic ApplicationContext interface, and define..
web.xml SpringMVC_Basic01_Controller index.html spring org.springframework.web.servlet.DispatcherServlet spring *.htm Class DispatcherServletpublic class DispatcherServletextends FrameworkServlet Central dispatcher for HTTP request handlers/controllers, e.g. for web UI controllers or HTTP-based remote service exporters. Dispatches to registered handlers for processing a web request, providing co..
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※ 다 같은 그림인데 밑으로 내려올 수록 더 심화되고 자세한 흐름이다.기본적인 Spring MVC는 이 그림이 나타내는 flow가 전부라고 할 수 있다. ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※ cf. Controller의 각 메소드에서 최종적으로 String값을 리턴하면서 클라이언트가 가도록 할 페이지를 넘길때 "redirect:"가 붙이는 이유? 내가 착각했던 부분은 Controller의 각 메소드가 return을 할 때 매핑된 .do 와 같은 처리 요청을 하면 다시 메소드로 갈 것이라고 생각했는데 잘못된 생각이었다. Controller에서 return을 하게 될 경우 view를 찾아 보내는 것을 피할 수 ..
bean에서 객체를 가져올 때 기본적으로 싱글톤 방식으로 객체를 가져온다. 즉, 아무리 여러번 객체를 가져와도 가져올 때마다 새로 생성하는 것이 아니라 하나의 동일한 객체를 가져오게 된다는 것이다. bean에서 객체를 가져올 때 기존처럼 싱글톤 방식으로 하나의 동일한 객체를 계속 가져오는 것이 아니라 getBean()으로 객체를 가져올 때마다(주입 받을 때마다) 객체를 새로 생성해서 새로운 객체를 가져오게 된다. 즉, getBean()을 통해 객체를 가져올 때(주입이 필요할 때)마다 새로운 객체가 필요하다면 scope="prototype"을 사용한다. 예제코드 public class Client implements InitializingBean , DisposableBean { public Client(..
예제코드 1 (기본) public class Client implements InitializingBean , DisposableBean { public Client() { System.out.println("Client Default"); } private String defaulthost; public Client(String defaulthost){ this.defaulthost = defaulthost; System.out.println("Client Overloading :" + this.defaulthost); } private String host; public String getHost() { return host; } public void setHost(String host) { this..
xml대신 Configcontext 을 "Spring 설정 파일"로 사용하는 방식이며 코드는 아래와 같다 /* Configcontext 을 [Spring 설정 파일]로 사용하겠다 (xml 파일 대체 하겠다) :객체 생성과 주입을 처리 하겠다 @Configuration (설정파일) @Bean (객체 생성) (함수 기반의 처리) xml 파일 이라면 Java 파일에서는 함수를 생성해서 객체 주소 리턴하는 형태 */ @Configuration //xml 생성public class Configcontext { @Bean public User user() { // return new User(); } @Bean public User2 user2() { // return new User2(); }} public cl..
public class Recorder { } public class MonitorViewer { private Recorder recorder; public Recorder getRecorder() { return recorder; } @Resource(name="yy") //id 값 또는 name 을 명시해서 특정 객체 주입 public void setRecorder(Recorder recorder) { this.recorder = recorder; System.out.println("setter 주입 성공"); }} public class Program { public static void main(String[] args) { /* JAVA 코드 방식 MonitorViewer viewer = ne..
public class Recorder { } public class MonitorViewer { private Recorder recorder; public Recorder getRecorder() { return recorder; } @Autowired @Qualifier("corder1") // public void setRecorder(Recorder recorder) { this.recorder = recorder; System.out.println("setter 주입 성공"); } @Autowired @Qualifier("corder2") // public void RecorderMethod(Recorder rec) { System.out.println("rec : " + rec); } } p..
.xml .javapublic class MonitorViewer { private Recorder recorder; public Recorder getRecorder() { return recorder; } // @Autowired가 선언됨으로써 // 해당 메소드에서 의존하고 있는 객체(구동을 위해 필요한 객체)를 // type으로 찾아서 이와 일치하는 객체를 bean 에서 찾아서 이곳에 injection하게 된다 @Autowired public void setRecorder(Recorder recorder) { this.recorder = recorder; }} public class Recorder { } public class Program { public static void main(Strin..
public class DataSourceFactory { private String jdbcDriver; private String jdbcUrl; private String username; private String password; public void setJdbcDriver(String jdbcDriver) { this.jdbcDriver = jdbcDriver; } public void setJdbcUrl(String jdbcUrl) { this.jdbcUrl = jdbcUrl; } public void setUsername(String username) { this.username = username; } public void setPassword(String password) { this..
192.168.0.26 20000 package DI_10_Spring; import java.util.Properties; public class BookClient { private Properties config; public void setConfig(Properties config) { this.config = config; } //일반함수 (출력) public void connect() { String server = config.getProperty("server"); String timeout = config.getProperty("connectiontimeout"); System.out.println("server : " + server); System.out.println("timeou..
public class Program { public static void main(String[] args) { /* ProtocolHandler handler = new ProtocolHandler(); ArrayList arraylist = new ArrayList(); arraylist.add(new EncFilter()); arraylist.add(new HeaderFilter()); arraylist.add(new ZipFilter()); handler.setFilters(arraylist); */ ApplicationContext context = new GenericXmlApplicationContext("classpath:DI_07_Spring/DI_07.xml"); ProtocolHan..
public interface ProtocolHandler {} public class RestHandler implements ProtocolHandler {} public class RssHandler implements ProtocolHandler {} public class ProtocolHandlerFactory { //Map(key , value) private Map handlers; public void setHandlers(Map handlers) { this.handlers = handlers; System.out.println("setter 주입 성공 : " + this.handlers); }} public class Program { public static void main(Str..
public class JobExecute { public JobExecute(String first , int second) { System.out.println("String,int"); } public JobExecute(String first , long second) { System.out.println("String,long"); } public JobExecute(String first , String second) { System.out.println("String,String"); } private ArticleDao articledao; public ArticleDao getArticledao() { return articledao; } public void setArticledao(A..
ApplicationContext context = new GenericXmlApplicationContext("classpath:DI_05_Spring/DI_05.xml"); System.out.println("before : mybean객체");MyBean mybean = context.getBean("mybean",MyBean.class);System.out.println("after : mybean객체 : " + mybean); System.out.println("before : mybean2객체");MyBean mybean2 = context.getBean("mybean",MyBean.class);System.out.println("after : mybean2객체 : " + mybean2); /..
colspan a b c colspan 예시 rowspan a b c d rowspan 예시 출처: http://webberstudy.com/html-css/html-2/table-basic-structure/ thead, tbody, tfoot의 존재 이유 thead, tbody, tfoot이 없어도 원하는 표를 잘 만들 수 있다. 그렇다면 왜 이 세 가지 태그들이 존재하는 것일까? 몰라서 okky에 질문을 올렸다. 답변으로는 크게 두 가지 의견이 나왔는데 나중에 javascript로 제어하고 싶을때 이를 특정하기 위해서 파트별로 태그로 구분해 두는 것이라는 의견과 시맨틱 웹 관점에서 구조적인 html 일 수록 검색에서 더 잘 걸리기 때문이라는 답변이 있었다.(참고 : https://okky.kr/ar..
vs 닷 형태가 ul이고 숫자로 순차적으로 나오는 것(1, 2, 3..) ol이다. 약자를 보면 쉽다. 내가 막써오던 ul은 unordered list 였다. 정렬되지 않은 리스트이므로 닷 으로 구분되는 것이었다. 반면 ol은 ordered list로 정렬된 리스트이기 때문에 숫자로 구분되는 것이다. vs HTML문서를 작성할 때 가장 많이 표현하게 되는 양식이 글자를 굵게하는 것입니다. 그리고 이 문제를 해결하기 위해서 요소를 너무나 당연하게, 그리고 쉽게 사용합니다. 하지만 웹접근성을 높이고자 한다면, 웹표준을 이해하고 준수하고자 한다면 요소보다는 요소가 좋습니다. 요소는 의미적으로 강조를 가리킵니다. 반면에 요소는 문자열을 단순히 굵게 표시하여 표현하는데 목적을 둡니다. 표현상으로 두 요소의 차이는..
HTML The HTML element provides general information (metadata) about the document, including its title and links to its scripts and style sheets. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head 막 써왔던 head의 본래 존재 목적이 잘 정리되어 있어서 발췌했다. 역시 알고 쓰는 것과 모르고 쓰는 것은 깊이가 다르다. HTML The HTML Element represents the content of an HTML document. There can be only one element in a document. https://d..
public class boarddao { static DataSource ds; Connection conn; PreparedStatement pstmt; ResultSet rs; static { InitialContext ctx; try { ctx = new InitialContext(); Context envCtx = (Context) ctx.lookup("java:comp/env"); ds = (DataSource) envCtx.lookup("/jdbc/oracle"); } catch (NamingException e) { System.out.println("lookup Fail : " + e.getMessage()); } } // 이제 각 함수에서 conn = ds.getConnection();..
$(function() { var date = new Date(); var currentMonth = date.getMonth(); var currentDate = date.getDate(); var currentYear = date.getFullYear(); $('#datepicker').datepicker({ minDate: new Date(currentYear, currentMonth, currentDate), dateFormat: 'yy-mm-dd' }); }); 맨 앞에서 스크립트 코드를 저렇게 처리하면 '2018-04-14' 형식으로 변경됨
cos.jar 이용하면 스트림 일일이 열고 코드 칠 필요없이 간편하게 업로드가 가능하다 참고 : http://www.servlets.com/cos/ cos.jar 에서 다중 파일 업로드를 지원하는 객체 : MultipartRequest >> request 객체를 넘겨준다 MultipartRequest 객체의 생성자와 각 요소 설명 new MultipartRequest( javax.servlet.http.HttpServletRequest request, java.lang.String saveDirectory, int maxPostSize, java.lang.String encoding, FileRenamePolicy policy ); request : MultipartRequest와 연결될 request객..
필터(Filter) 필터란 서블릿 2.3 버전에 추가된 것으로, 클라이언트의 요청을 서블릿 받기 전에 가로채어 필터에 작성된 내용을 수행하는 것을 말한다. 따라서 필터를 사용하면 클라이언트의 요청을 가로채서 서버 컴포넌트의 추가적인 기능을 수행시킬 수 있다. 필터(Filter)의 기능 – 필터로 할 수 있는 것들 인증(사용자 인증)로깅 및 감사 필터이미지 변환데이터 압축암호화 필터토크나이징(Tokenizing) 필터XML 컨텐츠를 변형하는 XSLT 필터Mime-Type 체인 필터URL 및 기타 정보들을 캐시하는 필터 필터 적용 순서 1. 필터 인터페이스를 구현하는 자바 클래스를 생성 2. /WEB-INF/web.xml 에 filter 엘레멘트를 사용하여 필터 클래스를 등록필터의 라이프 사이클 필터는 서블..
Model2 방식의 특징은 각자가 잘하는 일을 하도록 만드는 것에 있다. jsp는 표현과 출력에 집중하고 servlet은 연산처리를 전담하도록 하는 것이다. 크게 두 가지 방식이 있는데 하나는 공통의 servlet에 cmd값을 다르게 보내는 방법이고 다른 하나는 @WebServlet("*.do")와 같은 방식으로 주소가 달라도 하나의 servlet으로 보내는 방법이 있다. 정리) Model2 방식 두 가지1) '?cmd=~'2) @WebServlet("*.do") ?cmd=~private void doProcess(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { //1. 요청 받기 ..
참고 : http://devbox.tistory.com/entry/JSP-%EC%BB%A4%EB%84%A5%EC%85%98-%ED%92%80-1 연결 풀 커넥션 풀(connection pool)은 소프트웨어 공학에서 데이터베이스로의 추가 요청이 필요할 때 연결을 재사용할 수 있도록 관리되는 데이터베이스 연결의 캐시이다. 연결 풀을 사용하면 데이터베이스의 명령 실행의 성능을 강화할 수 있다. 각 사용자마다 데이터베이스 연결을 열고 유지보수하는 것은 비용이 많이 들고 자원을 낭비한다. 연결 풀의 경우 연결이 수립된 이후에 풀에 위치해 있으므로 다시 사용하면 새로운 연결을 수립할 필요가 없어진다. 모든 연결이 사용 중이면 새로운 연결을 만들고 풀에 추가(이건 확인 필요, 어떤 설명의 경우에는 대기한다고 나온다..
-> script로 alert전달 cf) action에서 매핑값을 설정 @WebServlet("/MemoServlet")public class Memoservlet extends HttpServlet { private static final long serialVersionUID = 1L; servlet 소스 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doProcess(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse resp..
java.ioClass PrintWriterjava.lang.Objectjava.io.Writerjava.io.PrintWriterAll Implemented Interfaces:Closeable, Flushable, Appendable, AutoCloseable public class PrintWriterextends Writer Prints formatted representations of objects to a text-output stream. This class implements all of the print methods found in PrintStream. It does not contain methods for writing raw bytes, for which a program sh..
jsp와 html의 경로 설정은 차이가 있으며 혼동되기 쉽다 [ jsp 파일 ] GET 방식 요청 로그인 POST 방식 요청 [ html ] (원칙적으로 서버요청 경로에 '/' 붙이지 않는다) 1. 목록보기 >>>> localhost:8090/MemoList 2. 목록보기 >>>> localhost:8090/WebServlet_3/MemoList 3. 목록보기 >>>> localhost:8090/member/MemoList 4. 목록보기 >>>> localhost:8090/WebServlet_3/member/MemoList 5. localhost:8090/MemoServlet localhost:8090/WebServlet_3/MemoServlet