<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Life is but a dream</title>
    <link>https://pjongsik.tistory.com/</link>
    <description>나 혼자만 알고 있기 아까운 것들.</description>
    <language>ko</language>
    <pubDate>Sun, 17 May 2026 14:46:31 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>돼지고기국밥</managingEditor>
    <image>
      <title>Life is but a dream</title>
      <url>https://t1.daumcdn.net/cfile/tistory/13020A334E63891322</url>
      <link>https://pjongsik.tistory.com</link>
    </image>
    <item>
      <title>마라톤 러닝 페이스(pace) 속도(km/h) 소요시간 계산기</title>
      <link>https://pjongsik.tistory.com/223</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;요즘 러닝하면서 페이스/속도 계산이 필요해서 &lt;/b&gt;&lt;b&gt;gemini-cli로 만들어 github에 배포해봤다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;AI로 인해 참 좋은 세상이다^^&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;iframe src=&quot;https://pjongsik.github.io/marathon-pace-calculator-web/&quot; width=&quot;100%&quot; height=&quot;800px&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;</description>
      <category>JS Life</category>
      <category>Pace</category>
      <category>러닝</category>
      <category>마라톤완주시간계산</category>
      <category>속도</category>
      <category>속도to페이스</category>
      <category>페이스</category>
      <category>페이스속도계산</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/223</guid>
      <comments>https://pjongsik.tistory.com/223#entry223comment</comments>
      <pubDate>Thu, 25 Sep 2025 10:35:58 +0900</pubDate>
    </item>
    <item>
      <title>[javascript] new Date().toISOString() 하면 어제 날짜가 표시되는 이유</title>
      <link>https://pjongsik.tistory.com/222</link>
      <description>&lt;div data-en-clipboard=&quot;true&quot; data-pm-slice=&quot;0 1 []&quot;&gt;toISOString&lt;span style=&quot;color: #212529;&quot;&gt; 은 UTC시간을 기준으로 반환하기 때문에 한국과 9시간이 차이가 난다.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: start;&quot;&gt;&lt;span style=&quot;color: #212529;&quot;&gt;해결방법은&lt;/span&gt;&lt;/div&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;
&lt;div&gt;&lt;span style=&quot;color: #212529;&quot;&gt;한국의 offset을 수동으로 추가한 뒤 그 값을 빼주기&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;span style=&quot;color: #212529;&quot;&gt;moment.js 라이브러리 사용하기&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;text-align: start;&quot;&gt;&lt;span style=&quot;color: #212529;&quot;&gt;라이브러리는 추가적으로 사용하고 싶지 않으니까 offset을 수동으로 추가하는 방법을 사용한다.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: #fbfaf8; color: #333333;&quot; data-line-wrapping=&quot;false&quot; data-codeblock=&quot;true&quot;&gt;
&lt;div data-plaintext=&quot;true&quot;&gt;var date = new Date();&lt;/div&gt;
&lt;div data-plaintext=&quot;true&quot;&gt;var offset = date.getTimezoneOffset() * 60000;&lt;/div&gt;
&lt;div data-plaintext=&quot;true&quot;&gt;var dateOffset = new Date(date.getTime() - offset);&lt;/div&gt;
&lt;div data-plaintext=&quot;true&quot;&gt;var base_date = dateOffset.toISOString().substring(0,20).replace(/-/g,'');&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;*참고 : &lt;a href=&quot;https://velog.io/@aurpo1/Javascript-Date-toISOString-1%EC%9D%BC-%EC%A0%84-timezone-trouble&quot;&gt;https://velog.io/@aurpo1/Javascript-Date-toISOString-1%EC%9D%BC-%EC%A0%84-timezone-trouble&lt;/a&gt;&lt;/div&gt;</description>
      <category>Web/javascript</category>
      <category>asia/seoul</category>
      <category>javascript 시간</category>
      <category>UTC</category>
      <category>서울시각</category>
      <category>현재시각</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/222</guid>
      <comments>https://pjongsik.tistory.com/222#entry222comment</comments>
      <pubDate>Thu, 22 Feb 2024 16:55:24 +0900</pubDate>
    </item>
    <item>
      <title>Mybatis : JavaBeansDataExchange could not instantiate result class  오류</title>
      <link>https://pjongsik.tistory.com/221</link>
      <description>&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;Select 한 결과를 resultClass 에 매핑할때 오류가 발생한다.&lt;/div&gt;
&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;1. resultClass=&quot;&lt;a href=&quot;https://yjh5369.tistory.com/entry/java.util.HashMap&quot;&gt;&lt;span style=&quot;color: #3d62ce;&quot;&gt;java.util.Map&lt;/span&gt;&lt;/a&gt;&quot;&amp;nbsp; 으로 사용한경우&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; resultClass=&quot;&lt;a href=&quot;https://yjh5369.tistory.com/entry/java.util.HashMap&quot;&gt;&lt;span style=&quot;color: #3d62ce;&quot;&gt;java.util.HashMap&lt;/span&gt;&lt;/a&gt;&quot; 으로 변경해주면 해결됨&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; Map은 인터페이스라 객체성성이 안되서 발생&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;2. 임의로 만든 Class 에서 발생한 경우&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; 생성자가 없어서 발생&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;발생한 Class 예제&lt;/div&gt;
&lt;pre id=&quot;code_1694053050835&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;@Setter
@Getter
@Builder
public class PersonDto  {
     private int age;
     private String name;
}&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1694053067241&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;@NoArgsConstructor
@AllArgsConstructor​&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div&gt;를 추가 하면&amp;nbsp; 해결됨&lt;/div&gt;</description>
      <category>JAVA</category>
      <category>AllArgsConstructor</category>
      <category>DTO</category>
      <category>HashMap</category>
      <category>map</category>
      <category>mybatis</category>
      <category>NoArgsConstructor</category>
      <category>생성자</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/221</guid>
      <comments>https://pjongsik.tistory.com/221#entry221comment</comments>
      <pubDate>Thu, 7 Sep 2023 11:19:29 +0900</pubDate>
    </item>
    <item>
      <title>Windows 보안 취약점 445 포트 LISTENING 제거</title>
      <link>https://pjongsik.tistory.com/220</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;1. 윈도우 오른쪽 하단의 네트워크 아이콘(PC모양) 우클릭하여 네트워크 및 인터넷 설정 열기 클릭한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock floatLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;292&quot; data-origin-height=&quot;91&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byA5ft/btstgjdjIUJ/S0qCzFW5N34aJ0hHkxhAz1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byA5ft/btstgjdjIUJ/S0qCzFW5N34aJ0hHkxhAz1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byA5ft/btstgjdjIUJ/S0qCzFW5N34aJ0hHkxhAz1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyA5ft%2FbtstgjdjIUJ%2FS0qCzFW5N34aJ0hHkxhAz1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;292&quot; height=&quot;91&quot; data-origin-width=&quot;292&quot; data-origin-height=&quot;91&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 설정창에서 이더넷 &amp;gt; 아댑터 옵션 변경 &amp;gt; 이더넷 우클릭 속성 선택 &amp;gt; 속성 에서 &lt;b&gt;Microsoft 네트워크요 파일 및 프린터 공유&lt;/b&gt; 체크 해제 &amp;gt; 확인 클릭&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock floatLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1511&quot; data-origin-height=&quot;716&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bNNSHv/btstlLfKDwx/YJlYM1WkXqgJKoEudTKOUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bNNSHv/btstlLfKDwx/YJlYM1WkXqgJKoEudTKOUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bNNSHv/btstlLfKDwx/YJlYM1WkXqgJKoEudTKOUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbNNSHv%2FbtstlLfKDwx%2FYJlYM1WkXqgJKoEudTKOUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1511&quot; height=&quot;716&quot; data-origin-width=&quot;1511&quot; data-origin-height=&quot;716&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. PC를 재부팅 해서 확인해보면 445 포트가 사라졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반드시 재부팅해야 적용됨&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-끝-&lt;/p&gt;</description>
      <category>Windows</category>
      <category>445</category>
      <category>445 포트 제거</category>
      <category>445port</category>
      <category>445포트</category>
      <category>445포트 없애기</category>
      <category>SMB</category>
      <category>파일 및 프린터 공유 포트</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/220</guid>
      <comments>https://pjongsik.tistory.com/220#entry220comment</comments>
      <pubDate>Thu, 7 Sep 2023 11:12:57 +0900</pubDate>
    </item>
    <item>
      <title>JAVA gmail smtp로 메일 보내기</title>
      <link>https://pjongsik.tistory.com/219</link>
      <description>&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;1. 의존성 추가&lt;/div&gt;
&lt;div&gt;&lt;!-- &lt;a href=https://mvnrepository.com/artifact/javax.mail/javax.mail-api&gt;https://mvnrepository.com/artifact/javax.mail/javax.mail-api&lt;/a&gt; --&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1681293486748&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;dependency&amp;gt;
    	&amp;lt;groupId&amp;gt;javax.mail&amp;lt;/groupId&amp;gt;
    	&amp;lt;artifactId&amp;gt;javax.mail-api&amp;lt;/artifactId&amp;gt;
   	&amp;lt;version&amp;gt;1.6.2&amp;lt;/version&amp;gt;
&amp;lt;/dependency&amp;gt;
&amp;lt;dependency&amp;gt;
	&amp;lt;groupId&amp;gt;com.sun.mail&amp;lt;/groupId&amp;gt;
	&amp;lt;artifactId&amp;gt;javax.mail&amp;lt;/artifactId&amp;gt;
	&amp;lt;version&amp;gt;1.6.2&amp;lt;/version&amp;gt;
&amp;lt;/dependency&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 샘플코드&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1681293546103&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class EmailSender {

    // 구글 이메일
    static final String user_email= &quot;XXXXX@gmail.com&quot;;
    // 구글 비번
    static final String user_pw = &quot;XXXXX&quot;;
    
    static final String smtp_host = &quot;smtp.gmail.com&quot;;
    static final int smtp_port = 465;  // TLS : 587, SSL : 465

    public static void Send() throws Exception {
        Properties props = System.getProperties();
        props.put(&quot;mail.smtp.host&quot;, smtp_host); 
        props.put(&quot;mail.smtp.port&quot;, smtp_port); 
        props.put(&quot;mail.smtp.auth&quot;, &quot;true&quot;); 
        props.put(&quot;mail.smtp.ssl.enable&quot;, &quot;true&quot;); 
        props.put(&quot;mail.smtp.ssl.trust&quot;, smtp_host);
        
        Session session = Session.getInstance(props,
                new javax.mail.Authenticator() {
                    protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(user_email, user_pw);
                    }
                });
        
        try {

            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(user_email));

           // 받는 이메일
            message.setRecipients(
                    Message.RecipientType.TO,
                    InternetAddress.parse(&quot;XXXXX@gmail.com, XXXXX@naver.com&quot;)    
            );
	
	  // 제목
            message.setSubject(&quot;테스트 메일입니다.&quot;); 
	  
	   // 내용
            message.setText(&quot;이것은 테스트 메일입니다. \n\n 잘 갔나요?&quot;);

            // 발송
            Transport.send(message);
            
        } catch (MessagingException e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 코드를 실행했더니&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1681293609836&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Application-specific password required&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오류가 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구글링 해보니 &lt;u&gt;2차인증 설정시 발생&lt;/u&gt;하는 오류라고 함&lt;/p&gt;
&lt;div&gt;해결방법은&amp;nbsp; 구글 보안탭에서&amp;nbsp; 앱 비밀번호를 생성해서 사용하면 된다.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;3. 앱 비밀번호 만들고 사용하기&lt;/div&gt;
&lt;div&gt;1) 구글계정으로 이동 (&lt;a href=&quot;https://myaccount.google.com/&quot;&gt;https://myaccount.google.com/&lt;/a&gt;)&lt;/div&gt;
&lt;div&gt;2) 보안&amp;nbsp; 선택&lt;/div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;603&quot; data-origin-height=&quot;661&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/btPaKf/btr9Mfg1t2j/Nm4Y0tz97AhBJeKwYeMNqK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/btPaKf/btr9Mfg1t2j/Nm4Y0tz97AhBJeKwYeMNqK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/btPaKf/btr9Mfg1t2j/Nm4Y0tz97AhBJeKwYeMNqK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbtPaKf%2Fbtr9Mfg1t2j%2FNm4Y0tz97AhBJeKwYeMNqK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;603&quot; height=&quot;661&quot; data-origin-width=&quot;603&quot; data-origin-height=&quot;661&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div&gt;3) 2단계 인증 선택&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1154&quot; data-origin-height=&quot;428&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ztKoz/btr9OymhWXz/YWIDI1tYkZLHXfRaASCV7k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ztKoz/btr9OymhWXz/YWIDI1tYkZLHXfRaASCV7k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ztKoz/btr9OymhWXz/YWIDI1tYkZLHXfRaASCV7k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FztKoz%2Fbtr9OymhWXz%2FYWIDI1tYkZLHXfRaASCV7k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1154&quot; height=&quot;428&quot; data-origin-width=&quot;1154&quot; data-origin-height=&quot;428&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4) 맨밑에 앱 비밀번호 선택&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;890&quot; data-origin-height=&quot;514&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cFbLCM/btr9Rvo088o/MkLfkVQEk0jwWR0c0YcHK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cFbLCM/btr9Rvo088o/MkLfkVQEk0jwWR0c0YcHK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cFbLCM/btr9Rvo088o/MkLfkVQEk0jwWR0c0YcHK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcFbLCM%2Fbtr9Rvo088o%2FMkLfkVQEk0jwWR0c0YcHK1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;890&quot; height=&quot;514&quot; data-origin-width=&quot;890&quot; data-origin-height=&quot;514&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5) 앱 선택 : 메일, 기기 선택 : windows 컴퓨터, 생성 클릭 하면 16자리 비밀번호가 생성된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;868&quot; data-origin-height=&quot;514&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dlftWa/btr9NEAtK0Q/ItloCec6h7ewBwapMREdzK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dlftWa/btr9NEAtK0Q/ItloCec6h7ewBwapMREdzK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dlftWa/btr9NEAtK0Q/ItloCec6h7ewBwapMREdzK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdlftWa%2Fbtr9NEAtK0Q%2FItloCec6h7ewBwapMREdzK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;868&quot; height=&quot;514&quot; data-origin-width=&quot;868&quot; data-origin-height=&quot;514&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6) 생성된 비밀번호를 user_pw 로 사용하면 메일 잘 발송된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;388&quot; data-origin-height=&quot;265&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4N071/btr9Ga1mWDn/tpPQleOMPzpCOSTledJkIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4N071/btr9Ga1mWDn/tpPQleOMPzpCOSTledJkIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4N071/btr9Ga1mWDn/tpPQleOMPzpCOSTledJkIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4N071%2Fbtr9Ga1mWDn%2FtpPQleOMPzpCOSTledJkIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;388&quot; height=&quot;265&quot; data-origin-width=&quot;388&quot; data-origin-height=&quot;265&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;끝&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;참고 : &lt;a href=&quot;https://support.google.com/accounts/answer/185833?hl=ko&quot;&gt;https://support.google.com/accounts/answer/185833?hl=ko&lt;/a&gt;#&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>JAVA</category>
      <category>emailsender</category>
      <category>gmail smtp</category>
      <category>google smtp</category>
      <category>java mail sender</category>
      <category>sendemailbyjava</category>
      <category>SMTP</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/219</guid>
      <comments>https://pjongsik.tistory.com/219#entry219comment</comments>
      <pubDate>Wed, 12 Apr 2023 19:06:27 +0900</pubDate>
    </item>
    <item>
      <title>Unhandled content type. Must be text/*, application/xml, or application/*+xml</title>
      <link>https://pjongsik.tistory.com/218</link>
      <description>&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;jsoup 으로 json, xml 결과 페이지를 호출하면&lt;/div&gt;
&lt;div&gt;Unhandled content type. Must be text/*, application/xml, or application/*+xml&amp;nbsp;&lt;/div&gt;
&lt;div&gt;오류가 발생함&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;해결방법은&lt;/div&gt;
&lt;div&gt;.ignoreContentType(true)&amp;nbsp; 설정하면 됨&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1681293265683&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Jsoup.connect(&quot;/test.json&quot;)
  	.ignoreContentType(true)
  	.method(Method.GET)
  	.execute();&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혹은 header에 ContentType 을 json이나 xml 로 지정해도 될 듯.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;끝.&lt;/p&gt;</description>
      <category>JAVA</category>
      <category>ignoreContentType</category>
      <category>json</category>
      <category>Jsoup</category>
      <category>jsoup.connect</category>
      <category>xml</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/218</guid>
      <comments>https://pjongsik.tistory.com/218#entry218comment</comments>
      <pubDate>Wed, 12 Apr 2023 18:56:44 +0900</pubDate>
    </item>
    <item>
      <title>JSON String 을 객체화 하기 (json-simple)</title>
      <link>https://pjongsik.tistory.com/217</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. json-simple&amp;nbsp; 의존성 추가&lt;/p&gt;
&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;&lt;!-- &lt;a href=https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple&gt;https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple&lt;/a&gt; --&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1681293049227&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;dependency&amp;gt;
    &amp;lt;groupId&amp;gt;com.googlecode.json-simple&amp;lt;/groupId&amp;gt;
    &amp;lt;artifactId&amp;gt;json-simple&amp;lt;/artifactId&amp;gt;
    &amp;lt;version&amp;gt;1.1&amp;lt;/version&amp;gt;
&amp;lt;/dependency&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div&gt;2.&amp;nbsp; 샘플 코드&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;/span&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1681293019296&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;String jsonText = &quot;{ \&quot;test\&quot; : \&quot;1234\&quot; }&quot;;
JSONParser parser = new JSONParser();
Object obj = parser.parse(jsonText);
JSONObject jsonObj = (JSONObject) obj;
String testValue = jsonObj.get(&quot;test&quot;).toString();
System.out.println(&quot;testValue : &quot; + testValue);&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;// 결과&lt;/div&gt;
&lt;div&gt;testValue : 1234&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>JAVA</category>
      <category>java json parser</category>
      <category>json</category>
      <category>json-simple</category>
      <category>JSONObject</category>
      <category>JSONParser</category>
      <category>jsonstringtoobject</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/217</guid>
      <comments>https://pjongsik.tistory.com/217#entry217comment</comments>
      <pubDate>Wed, 12 Apr 2023 18:53:18 +0900</pubDate>
    </item>
    <item>
      <title>[javascript] XMLHttpRequest(),  try ~ catch ~ 구문 안됨</title>
      <link>https://pjongsik.tistory.com/216</link>
      <description>&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;try ~ 오류가 catch가 안 된다.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;var xReq = new XMLHttpRequest();&lt;/div&gt;
&lt;div&gt;xReq.onreadystatechange = function() {&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp;console.log(xReq.readyState);&lt;/div&gt;
&lt;div&gt;&amp;nbsp; console.log(xReq.status);&lt;/div&gt;
&lt;div&gt;}&lt;/div&gt;
&lt;div&gt;xReq.open(&quot;POST&quot;, &quot;&lt;a href=&quot;http://localhost:99999/test/test&quot;&gt;http://localhost:9999/test&lt;/a&gt;&quot;, true);&lt;/div&gt;
&lt;div&gt;xReq.send(post);&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;서버 (&lt;a href=&quot;http://localhost:99999/test/test&quot;&gt;http://localhost:9999/&lt;/a&gt;) 실행 중이지 않은 경우&lt;/div&gt;
&lt;div&gt;xReq.send(post); 에서&lt;/div&gt;
&lt;div&gt;net::ERR_CONNECTION_REFUSED 오류가 발생한다.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;그래서, 오류 발생시 처리를 위해...&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;try {&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; xReq.send(post);&lt;/div&gt;
&lt;div&gt;} catch(err) {&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; alert('오류가 발생하였습니다. ');&lt;/div&gt;
&lt;div&gt;//&lt;/div&gt;
&lt;div&gt;}&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;이런 식으로 try ~ catch ~ 해보았으나 catch 가 안된다.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;이럴 땐, 아래 처럼 하면 오류시 처리를 할 수 있다.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;xReq.onerror = function () {&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;alert('오류가 발생하였습니다.');&lt;/div&gt;
&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; //&lt;/div&gt;
&lt;div&gt;};&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;참고 : &lt;a href=&quot;https://stackoverflow.com/questions/28556398/how-to-catch-neterr-connection-refused&quot;&gt;https://stackoverflow.com/questions/28556398/how-to-catch-neterr-connection-refused&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;끝.&lt;/div&gt;</description>
      <category>Web/javascript</category>
      <category>ajax</category>
      <category>catch</category>
      <category>Connection error</category>
      <category>ERR_CONNECTION_REFUSED</category>
      <category>onerror</category>
      <category>TRY</category>
      <category>XMLHttpRequest</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/216</guid>
      <comments>https://pjongsik.tistory.com/216#entry216comment</comments>
      <pubDate>Thu, 22 Dec 2022 18:15:37 +0900</pubDate>
    </item>
    <item>
      <title>could not create connection to database server. attempted reconnect 3 times. giving up</title>
      <link>https://pjongsik.tistory.com/215</link>
      <description>&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;로컬 테스트시 오류 발생&lt;/div&gt;
&lt;div&gt;원인유추&lt;/div&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;
&lt;div&gt;권한문제&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;타임존 인식문제&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;ol style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;
&lt;div&gt;은 아니었고 왜냐면 툴(workbench)로 잘 접속된다. telnet 해봐도 연결 잘되고&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;검색하다보니,&amp;nbsp; 아래 글을 발견&lt;/div&gt;
&lt;div&gt;타임존을 아시아/서울로 설정하니 해결됨.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;참고 :&lt;a href=&quot;https://www.skyer9.pe.kr/wordpress/?p=3913&quot;&gt;https://www.skyer9.pe.kr/wordpress/?p=3913&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #444444;&quot;&gt;mysql-connector-java 5.1.X 버전 이후로 KST 를 인식못하는 오류가 있다.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000;&quot;&gt;jdbc:mysql://&lt;/span&gt;&lt;a href=&quot;http://nb.skyer9.pe.kr:3306/?serverTimezone=UTC&quot;&gt;localhost:3306/?serverTimezone=UTC&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #444444;&quot;&gt;또는, 기존 운영중인 서버라면 아래와 같이 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Asia/Seoul&lt;/span&gt; 로 설정해 준다.&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000;&quot;&gt;jdbc:mysql://&lt;/span&gt;&lt;a href=&quot;http://nb.skyer9.pe.kr:3306/?serverTimezone=Asia/Seoul&quot;&gt;localhost:3306/?serverTimezone=Asia/Seoul&lt;/a&gt;&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div&gt;&lt;span style=&quot;color: #444444;&quot;&gt;타임존을 UTC 또는 Asia/Seoul 로 지정해야 정상적으로 연결된다.또는 커넥터를 낮은 버전으로 해도 된다.&lt;/span&gt;&lt;/div&gt;</description>
      <category>Database/MySQL</category>
      <category>asia/seoul</category>
      <category>mysql connection error</category>
      <category>mysql connection string</category>
      <category>serverTimezone</category>
      <category>타임존</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/215</guid>
      <comments>https://pjongsik.tistory.com/215#entry215comment</comments>
      <pubDate>Tue, 20 Dec 2022 20:02:18 +0900</pubDate>
    </item>
    <item>
      <title>Maven depandencies 다운로드 안될 때</title>
      <link>https://pjongsik.tistory.com/214</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-pm-slice=&quot;1 1 []&quot; data-en-clipboard=&quot;true&quot;&gt;&lt;b&gt;의존성 추가한 라이브러리가 안 받아지는 오류&lt;/b&gt;가 발생함.&lt;/div&gt;
&lt;div&gt;라이브러리가 없으니 다양한 오류가 발생함.&lt;/div&gt;
&lt;div&gt;아무리 clean 하고 maven update project 해도 해결이 안됨.&lt;/div&gt;
&lt;div&gt;프로젝트를 새로 받아서 해도 안됨.&lt;/div&gt;
&lt;div&gt;pom.xml repository를 변경해도 암됨.&lt;/div&gt;
&lt;div&gt;&lt;b&gt;원인은 &lt;u&gt;repository 캐시&lt;/u&gt; 때문&lt;/b&gt;이었음&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #3a3a3a;&quot;&gt;아티팩트 (또는 전체 로컬 저장소)를 &lt;b&gt;c:\Users\&amp;lt;username&amp;gt;\.m2\repository&amp;nbsp; 직접 삭제&lt;/b&gt;하고 &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #3a3a3a;&quot;&gt;다시 maven install해보니 제대로 받아온다. &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #3a3a3a;&quot;&gt;끝.&lt;/span&gt;&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>JAVA</category>
      <category>depandencies error</category>
      <category>maven build error</category>
      <category>maven error</category>
      <category>repository 캐시</category>
      <category>다운로드 안됨</category>
      <category>라이브러리 오류</category>
      <category>로컬저장소</category>
      <author>돼지고기국밥</author>
      <guid isPermaLink="true">https://pjongsik.tistory.com/214</guid>
      <comments>https://pjongsik.tistory.com/214#entry214comment</comments>
      <pubDate>Tue, 20 Dec 2022 19:58:40 +0900</pubDate>
    </item>
  </channel>
</rss>